"Aku arep menehi pitutur marang kowe bab initialization obyek. Nalika nggawe obyek, sampeyan kudu nemtokake nilai awal kanggo variabel kanggo ngindhari kahanan ing ngendi sampeyan ngakses obyek sing ora duwe informasi sing perlu kanggo bisa digunakake kanthi bener."

"Ayo nimbang obyek File. Informasi minimal sing dibutuhake kanggo file yaiku jenenge. Ora masuk akal yen nggawe file tanpa jeneng. "

"Upami kita nulis kelas MyFile kanggo nggarap file. Informasi apa sing dibutuhake kanggo saben obyek?"

"Jeneng file sing digandhengake karo obyek?"

"Iku bener. Kanggo nindakake iki, kita nambah cara initialize () kanggo kelas kita. Iki carane katon."

Tuladha:
class MyFile
{
    private String filename = null;

    public void initialize(String name)
    {
        this.filename = name;
    }
…
}

"Kita nambahake metode initialize supaya bisa nggarap obyek kanthi nelpon metode kasebut. Kita bisa nelpon metode obyek langsung sawise nelpon metode initialize. Yen kita ora bisa nggarap obyek, kita nyebataken ora sah ; yen ora, kita ngomong obyek kasebut sah . Tugas utama metode initialize yaiku nampa kabeh data sing dibutuhake obyek supaya valid. "

"Aku weruh."

"Saiki ayo gawe tugas kita luwih angel. Utawa, yen dipikir maneh, luwih gampang. Gumantung carane sampeyan ndeleng. Upaminipun programmer nggunakake kelas kita bakal luwih trep kanggo pass mung direktori file lan jeneng singkat tinimbang path lengkap. Kita bisa nggawe cara initialize liyane ( Jawa ngijini kita nggawe sawetara cara karo jeneng sing padha ) supaya programmer nindakake iki. Mangkene carane kelas kita bakal katon: "

Conto karo rong cara initialize :
class MyFile
{
    private String filename = null;
    public void initialize(String name)
    {
        this.filename = name;
    }

    public void initialize(String folder, String name)
    {
        this.filename = folder + name;
    }

…
}

"Siji liyane: kita asring kudu nggawe salinan sementara file ing jejere sing saiki."

"Apa kita bisa nggawe cara kanggo nindakake iki?"

"Tentu. Delengen."

Gawe salinan ing jejere file saiki:
class MyFile
{
    private String filename = null;
    public void initialize(String name)
    {
        this.filename = name;
    }

    public void initialize(String folder, String name)
    {
        this.filename = folder + name;
    }

   // The filename will be stored in the same directory as file. 
    public void initialize(MyFile file, String name) 
    {       
        this.filename = file.getFolder() + name;
    }

…
}

"Lan aku bisa nggawe akeh cara kaya sing dakkarepake?"

"Inggih, ing alesan. Nanging teknis ngandika, ya, akeh sing pengin."

"Kapan aku kudu nelpon metode initialize?"

"Sanalika sawise nggawe obyek, supaya bener."

Tuladha:
MyFile file = new MyFile();
file.initialize("c:\data\a.txt");

String text = file.readText();
MyFile file = new MyFile();
file.initialize("c:\data\", "a.txt");

String text = file.readText();
MyFile file = new MyFile();
file.initialize("c:\data\a.txt");

MyFile file2 = new MyFile();
file2.initialize("a.txt");

String text = file2.readText();

"Apa metode getFolder() iki?"

"Kita durung bener nuduhake kode ing kene. Iku nuduhake cara sing ngasilake senar kanthi jeneng folder ing ngendi file kita disimpen."