List İnterface

List interface’i Collection interface’ini kalıtır ve elementleri ardışık olarak tutmak için collection tanımlar. Bir list oluşturmak için ArrayList veya LinkedList concrete classlar kullanılabilir. List içerisinde duplicate elementler tutulabilir. java.util.List<E> Metodları : +add(index: int, element: Object): boolean Belirtilen index’e element ekler. +addAll(index: int, c: Collection<? extends E>): boolean C’deki tüm elementleri list’e ekler. +get(index: int): E […]

Collection Interface

Collection element olarak tanımlanan bir grup nesneyi temsil eder. Collection interface’i maksimum genellik istenildiğinde kullanılır. Collectionlar, arguman olarak yine bir collection alabilecek constructorlara sahiptir.Bu constructor(conversion constructor) argüman olarak verilen collection ne olursa olsun, onun elementlerini içeren yeni bir collection oluşturur. Bu sayede collection tipini değiştirebiliriz. Örneğin Collection<String> c şeklinde List, Set veya diğer Collection türlerinde […]

Walking the File Tree

FileVisitor & SimpleFileVisitor Bir dosya ağacındaki tüm dosyaları recursive olarak gezmek istediğimizde FileVisitor interfaceini kullanılırız. FileVisitor implement edilirken gezme sürecinde belirli zamanlarda( erişimden önce, erişimden sonra, erişilirken, hata olursa gibi) yapılacaklar belirtilir. Bunun için 4 metod vardır. 1 – preVisitDirectory = Directory içerisindeki dosyalar ziyaret edilmeden önce çağırılır. 2 – postVisitDirectory = Directory içerisindeki dosyalar […]

Delete – Copy – Move

Dosya,Dizin Silme Files sınıfı silme işlemleri için iki metod sunar. Bir dizinin(directory) silinmesi isteniyorsa bu dizin boş olmalıdır, aksi halde silme başarısız olur. 1 – delete(Path) metodu dosyayı siler ya da bir exception fırlatır. Örneğin; eğer dosya yoksa NoSuchFileException fırlatılır. Aşağıdaki gibi bir kodla exception yakalanabilir ve silmenin neden başarısız olduğu belirlenebilir. try {     Files.delete(path); } catch (NoSuchFileException x) {     System.err.format(“%s: no such” + ” file or directory%n”, path); […]