示例擴充套件 Java 7 Path 類
擴充套件方法的常見用例是改進現有 API。以下是將 exist
,notExists
和 deleteRecursively
新增到 Java 7+ Path
類的示例:
fun Path.exists(): Boolean = Files.exists(this)
fun Path.notExists(): Boolean = !this.exists()
fun Path.deleteRecursively(): Boolean = this.toFile().deleteRecursively()
現在可以在此示例中呼叫:
val dir = Paths.get(dirName)
if (dir.exists()) dir.deleteRecursively()