Com funciona Java i entendre l'estructura del codi de Java - Part 2


A la nostra darrera publicació Què és Java i història de Java havíem tractat Què és Java, les característiques de Java en detalls, l'historial de llançaments i la seva denominació, així com els llocs on s'utilitza Java.

Aquí, en aquesta publicació, passarem pel funcionament i l'estructura del codi del llenguatge de programació Java. Abans de continuar, permeteu-me recordar-vos que Java s'ha desenvolupat tenint en compte Write Once Run Anywhere/Anytime (WORA) significa assegurar-vos que l'aplicació desenvolupada ha de ser arquitectònicament neutra, independent de la plataforma i portàtil.

Funcionament de Java

Tenint en compte aquests objectius, Java es va desenvolupar amb el model de treball següent que es pot classificar en quatre etapes.

Escriu el fitxer font. Aquest fitxer conté tot el procediment, mètode, classe i objectes dins del protocol establert per al llenguatge de programació Java. El nom del fitxer font hauria de ser el nom de la classe o viceversa. El nom del fitxer font ha de tenir l'extensió .java. També el nom del fitxer i el nom de la classe distingeixen entre majúscules i minúscules.

Executeu el fitxer de codi font de Java mitjançant Java Compiler. El compilador de codi font de Java comprova si hi ha errors i sintaxis al fitxer font. No us permetrà compilar el vostre codi font sense satisfer el compilador Java arreglant tots els errors i advertències.

El compilador crea un fitxer de classe. Aquests fitxers de classe hereten el mateix nom que el nom del fitxer del codi font, però l'extensió varia. El nom del fitxer d'origen té l'extensió filename.java, mentre que l'extensió del classfile creat pel compilador és filename.class. Aquest fitxer de classe està codificat en bytecode: els bytecode són com per màgia.

Aquest fitxer de classes creat per Java Compiler és portàtil i arquitectònicament neutre. Podeu portar aquest fitxer de classe per executar-lo en qualsevol arquitectura de processador i plataforma/dispositiu. Tot el que necessiteu és una màquina virtual Java (JVM) per executar aquest codi sense importar on.

Ara enteneu les quatre etapes anteriors utilitzant un exemple. Aquí teniu una petita mostra de codi del programa Java. No us preocupeu si no enteneu el codi següent. A partir d'ara només entén com funciona.

public class MyFirstProgram
{
    public static void main(String[] args)
    {
        System.out.println("Hello Tecmint, This is my first Java Program");
    }
}

1. Vaig escriure aquest programa i vaig definir el nom de classe MyFirstProgram. És important tenir en compte que aquest programa s'ha de desar com a MyFirstProgram.java.

Recordeu l'etapa 1 anterior: el nom de la classe i el nom del fitxer han de ser els mateixos i el nom del fitxer ha de tenir l'extensió .java. Java també distingeix entre majúscules i minúscules, per tant, si el vostre nom de classe és MyFirstProgram, el nom del fitxer font ha de ser MyFirstProgram.java.

No podeu anomenar-lo com a 'Myfirstprogram.java' o 'myfirstprogram.java' o qualsevol altra cosa. Per convenció, és una bona idea posar un nom a la vostra classe en funció del que el programa està fent realment.

2. Per compilar aquest fitxer Font de Java, cal passar-lo a través del compilador Java. El compilador Java bàsicament comprovarà el codi font per detectar qualsevol error i advertència. No compilarà el codi font fins que no es resolguin tots els problemes. Per compilar el codi font de Java, heu d'executar:

$ javac MyFirstProgram.java

On MyFirstProgram.java és el nom del fitxer font.

3. En compilar correctament, notareu que el compilador Java va crear un fitxer nou al mateix directori el nom del qual és MyFirstProgram.class.

Aquest fitxer de classe està codificat en bytecodes i es pot executar en qualsevol plataforma, qualsevol arquitectura de processador qualsevol nombre de temps. Podeu executar el fitxer de classe dins de JVM (Java Virtual Machine) a Linux o qualsevol altra plataforma simplement com:

$ java MyFirstProgram

Així que tot el que has après anteriorment es pot resumir així:

Java Source Code >> Compiler >> classfile/bytecode >> Various devices running JVM 

Entendre l'estructura del codi a Java

1. El fitxer de codi font de Java ha de contenir una definició de classe. Un fitxer Java Source només pot contenir una classe pública/classe de primer nivell, però pot contenir moltes classes privades/classes internes.

La classe externa/classe superior/classe pública pot accedir a totes les classes privades/classes internes. La classe ha d'estar dins de claus. Tot a Java és un objecte i la classe és un model per a l'objecte.

Una demostració de classe pública/privada a Java:

public class class0
{
...
	private class1
	{
	…
	}

	private class 2
	{
	…
	}
...
}

2. La classe conté un o més mètodes. El mètode ha d'anar dins de les claus de la classe. Un exemple fictici és:

public class class0
{
	public static void main(String[] args)
	{
	…..
	…..
	}
}

3. Un mètode conté una o més declaracions/instruccions. Les instruccions han d'anar dins de les claus del mètode. Un exemple fictici és:

public class class0
{
	public static void main(String[] args)
	{
	System.out.println("Hello Tecmint, This is my first Java Program");
	System.out.println("I am Loving Java");
	…
	...
	}
}

També és important esmentar en aquest punt: cada enunciat ha d'acabar amb punt i coma. Un exemple fictici és:

System.out.println("Hello Tecmint, This is my first Java Program");
...
...
System.out.println("I am Loving Java");

Escrivint el vostre primer programa Java amb una descripció detallada. La descripció s'està posant com a comentaris aquí (// significa comentat) en aquest exemple. Hauríeu d'escriure comentaris dins d'un programa.

No només perquè aquest és un bon hàbit, sinó també perquè fa que el codi sigui llegible per tu o qualsevol altra persona en qualsevol moment posterior.

// Declare a Public class and name it anything but remember the class name and file name must be same, say class name is MyProg and hence file name must be MyProg.java
public class MyProg

// Remember everything goes into curly braces of class?
{
 

// This is a method which is inside the curly braces of class.
   public static void main(String[] args)

    // Everything inside a method goes into curly braces	
    {
        
    // Statement or Instruction inside method. Note it ends with a semicolon
    System.out.println("I didn't knew JAVA was so much fun filled");
    
    // closing braces of method
    }

// closing braces of class
}

Una descripció tècnica detallada del simple programa Java anterior.

public class MyProg

Aquí al nom anterior de la classe és MyProg i MyProg és una classe pública, el que significa que tothom hi pot accedir.

public static void main(String[] args)

Aquí el nom del mètode és principal, que és un mètode públic, el que significa que qualsevol pot accedir-hi. El tipus de retorn és nul, la qual cosa significa que no hi ha valor de retorn. Strings[] args significa que els arguments del mètode main haurien de ser una matriu que s'anomenarà args. No us preocupeu pel significat de estàtic a partir d'ara. Ho explicarem detalladament quan sigui necessari.

System.out.println("I didn't knew JAVA was so much fun filled");

System.out.ln demana a JVM que imprimeixi la sortida a la sortida estàndard que és la línia d'ordres de Linux en el nostre cas. Qualsevol cosa que estigui entre claus de la sentència println s'imprimeix tal com està, tret que sigui una variable. Més endavant entrarem en detalls de la variable. La declaració acaba amb punt i coma.

Fins i tot si alguna cosa no està clara ara, no us haureu de preocupar per això. A més, no cal que recordis res. Només heu de revisar la publicació i comprendre les terminologies i treballar fins i tot quan la imatge no és molt clara.

Això és tot per ara. Mantingueu-vos connectat amb Tecmint. Proporcioneu-nos els vostres valuosos comentaris als comentaris a continuació. Estem treballant en la següent part classe i mètode principal a Java i la publicarem aviat.