"Gusto kong sabihin sa iyo ang tungkol sa pagsisimula ng bagay. Kapag lumikha ka ng isang bagay, kailangan mong magtalaga ng mga paunang halaga sa mga variable nito upang maiwasan ang sitwasyon kung saan na-access mo ang isang bagay na walang impormasyong kailangan nito upang gumana nang tama."

"Isaalang-alang natin ang isang File object. Ang pinakamababang kinakailangang impormasyon para sa isang file ay ang pangalan nito. Ito ay magiging walang katotohanan na lumikha ng isang walang pangalan na file. "

"Ipagpalagay na magsulat tayo ng klase ng MyFile para magtrabaho sa mga file. Anong impormasyon ang kakailanganin para sa bawat bagay?"

"Ang pangalan ng file na nauugnay sa bagay?"

"Tama. Para magawa ito, idinaragdag namin ang initialize () na paraan sa aming klase. Ganito ang hitsura nito."

Halimbawa:
class MyFile
{
    private String filename = null;

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

"Idinagdag namin ang paraan ng pagsisimula upang gawing posible na magtrabaho kasama ang bagay sa pamamagitan ng pagtawag sa pamamaraan. Maaari naming tawagan kaagad ang mga pamamaraan ng bagay pagkatapos tawagan ang paraan ng pagsisimula. Kung hindi kami makakapagtrabaho sa isang bagay, tinatawag namin itong hindi wasto ; kung hindi, sinasabi namin na ang bagay ay wasto . Ang pangunahing gawain ng pamamaraan ng pagsisimula ay upang matanggap ang lahat ng data na kailangan ng isang bagay upang maging wasto ito. "

"Nakita ko."

"Ngayon, gawin nating mas mahirap ang ating gawain. O, kung iisipin, mas madali. Depende sa kung paano mo ito titignan. Ipagpalagay na mas maginhawa ang isang programmer na gumagamit ng ating klase na ipasa lamang ang direktoryo at maikling pangalan ng file sa halip na ang buong landas nito. Maaari tayong lumikha ng isa pang paraan ng pagsisimula ( Hinahayaan tayo ng Java na lumikha ng ilang mga pamamaraan na may magkatulad na mga pangalan ) upang hayaan ang programmer na gawin ito. Ganito ang magiging hitsura ng aming klase:"

Halimbawa na may dalawang paraan ng pagsisimula :
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;
    }

…
}

"Isa pang bagay: madalas na kailangan nating gumawa ng pansamantalang kopya ng isang file sa tabi ng kasalukuyang."

"Maaari ba tayong gumawa ng paraan para gawin ito?"

"Oo naman. Tingnan mo."

Gumawa ng kopya sa tabi ng kasalukuyang file:
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;
    }

…
}

"At maaari kong gawin ang marami sa mga pamamaraang ito hangga't gusto ko?"

"Well, within reason. But technically speaking, yes, as many as you want."

"Kailan ko kailangang tawagan ang paraan ng pagsisimula?"

"Kaagad pagkatapos lumikha ng bagay, upang gawin itong wasto."

Mga halimbawa:
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();

"Ano ang getFolder() method na ito?"

"Hindi pa talaga namin ipinakita ang code dito. Ito ay kumakatawan sa isang paraan na nagbabalik ng string na may pangalan ng folder kung saan naka-imbak ang aming file."