"Kumusta, bata kong kaibigan. Sana ay hindi mo nakalimutan na ako ay isang 16th generation bureaucrat. Kung hindi ko na-systematize ang lahat ng aking kaalaman, hindi ko kailanman makakamit kung ano ang mayroon ako. Ako ay puno ng kapaki-pakinabang na impormasyon. Tutulungan kita sa ilang mga gawain. Para sa panimula, hayaan mong sabihin ko sa iyo ang tungkol sa isang karaniwang Java program."

"Nakikinig ako."

"Katotohanan numero uno. Ang isang Java program ay binubuo ng mga klase. Ang bawat klase ay naka-imbak sa isang indibidwal na file, na ang pangalan ay tumutugma sa pangalan ng klase. Ang extension ng file ay java ."

"Kaya, ang isang programa ay binubuo ng isang serye ng mga file na may 'java' na extension ng file, at ang bawat file ay naglalaman ng code para sa isang klase lang, tama ba? "

"Tamang tama, Amigo. Kung ang isang file ay tinatawag na MyCat.java, naglalaman ito ng klase ng MyCat."

"Katotohanan bilang dalawa. Kapag marami kaming class file, pinapangkat namin ang mga ito sa mga folder at subfolder. Bukod pa rito, ang mga klase ay pinagsama-sama sa mga package at sub-package. Ang mga pangalan ng mga package at sub-package ay dapat na nakasaad sa class code, at dapat silang maging magkapareho sa mga pangalan ng folder at subfolder sa drive. "

"Kaya, sa isang banda, mayroon kaming mga file na nakaimbak sa mga folder, at sa kabilang banda - mga klase na nakaimbak sa mga pakete. Ang pangalan ng klase ay dapat ding tumugma sa pangalan ng file na naglalarawan sa klase. Ang pangalan ng package ay tumutugma sa pangalan ng folder kung saan naka-imbak ang klase."

"Maaari mo ba akong bigyan ng higit pang mga detalye?"

"Ang mga pangalan ng nested packages ay hinati ayon sa mga tuldok, halos katulad ng mga URL."

"Sa madaling salita, ipagpalagay na mayroon kang klase na pinangalanang Cat, na naka-imbak sa isang animals.pets package. Ibig sabihin ay:

Ang hard drive ay may ilang folder (tatawagin natin itong src ) kung saan naka-imbak ang lahat ng mga file ng proyekto.

Naglalaman ito ng folder na pinangalanang mga hayop , na naglalaman naman ng subfolder ng mga alagang hayop.

Naglalaman ang folder ng mga alagang hayop ng Cat .java file, na naglalaman naman ng code para sa klase ng Cat ."

"Hindi ako sigurado na naiintindihan ko."

"Tingnan. Ang istraktura ng mga klase at pakete ay sumasalamin sa istraktura ng mga folder at mga file sa drive. Kung mayroon kaming isang file na pinangalanang House .java, na naka-imbak sa src /com/houses folder, pagkatapos ay mayroong isang klase na pinangalanang House , na naka-imbak sa com.houses package."

"Nakuha ko."

"Mukhang mas mabilis mong napupulot ito. Tumingin sa screen. Ito ay code para sa isang maliit na klase. Nilagyan ko ng label ang lahat ng mahahalagang bahagi:"

PACKAGE NAME
package com.futujava.lesson2;
import java.io.IOException;
/**
 * User: General
 * Date: 12/21/12
 * Time: 11:59
 */
             CLASS NAME
public class Task1
{private static String TEXT = "Kiss my metal rear actuator";CLASS VARIABLE
                                                              ⎦
                                                                ⎤
   public static void main(String[] args) throws IOException{SCREEN OUTPUT                    SINGLE-LINE COMMENTSystem.out.println(TEXT); //Display a single string       ⎥
        MULTILINE COMMENT/*                                                        ⎥
        This is a multiline comment.                            ⎥
        The code below will display three identical strings.    ⎥ main() METHOD
       */VARIABLE DECLARATIONString s = "Ho-ho-ho!";METHOD CALLprintTextMoreTimes(s, 3);}                                                            ⎥
                                                                ⎦
                                          METHOD PARAMETERSpublic static void printTextMoreTimes(String s, int count)METHOD SIGNATURE
                                                              ⎦
                                                                ⎤
   {LOOPfor (int i = 0; i < count; i++)LOOP BODYMETHOD BODY/CODE
      {System.out.println(s);}}                                                            ⎥
                                                                ⎦
}

"Heh, ito ay kasing linaw ng maaari pagkatapos lamang ng isang paliwanag."

"Good! Iyon lang ang kailangan natin. Subukan mo lang na intindihin ang kahit na ano. Darating din ang kumpletong pag-unawa sa oras. Ngayon, kukuha ako ng ilang Z. May iba pang magpapatuloy sa iyong pagsasanay."