Realizarea și execuția unui program Java: Diferență între versiuni

De la WikiLabs
(Tutorial pentru lucrul cu linia de comandă)
(Linux Bash)
Linia 100: Linia 100:
 
student@olympus07:~/work/poo$
 
student@olympus07:~/work/poo$
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
== Scrierea, compilarea și execuția unui program Java ==
 +
 +
=== Editarea codului sursă ===
 +
 +
Primul pas în realizarea unui program Java este scrierea efectivă a codului. Pentru asta, folosiți editorul preferat și salvați fișierul cu extensia .java.
 +
 +
<div class="regula"><font color="#ff0000">Regulă:</font> Întotdeauna, extensia unui fișier care conține un program Java este .java</div>
 +
 +
 +
<div class="regula"><font color="#ff0000">Regulă:</font> Întotdeauna, numele clasei conținută într-un fișier .java, trebuie să fie identic cu numele fișierului. Ex: Clasa MainClass trebuie salvată într-un fișier cu extensia MainClass.java. Atenție: Java este case-sensitive!!!</div>
 +
 +
Pentru exemplu, vom realiza următoarea clasă:
 +
<syntaxhighlight lang="java">
 +
public class MainClass{
 +
 +
public static void main(String[] _args){
 +
    System.out.println("Hello world!");
 +
}
 +
 +
}
 +
</syntaxhighlight>
 +
 +
Această clasă se salvează într-un fișier cu numele MainClass.java.
 +
 +
=== Compilarea sursei ===
 +
 +
În consolă, se navighează folosind comenzile prezentate mai sus până în directorul în care a fost salvat fișierul sursă. Apoi, folosind executabilul ''javac'' (Java Compiler), se compilează:
 +
<syntaxhighlight lang="bash">
 +
student@olympus07:~/work/poo$ javac MainClass.java
 +
student@olympus07:~/work/poo$ ls -l
 +
total 8
 +
-rw-rw-r-- 1 student student 424 Jul 18 11:22 MainClass.class
 +
-rw-rw-r-- 1 student student 110 Jul 18 11:08 MainClass.java
 +
</syntaxhighlight>
 +
 +
<div class="regula"><font color="#ff0000">Regulă:</font> Întotdeauna, compilatorul Java va lua ca argument '''numele fișierului''' (cu tot cu extensie) care trebuie compilat.</div>
 +
 +
Dacă execuția compilatorului nu a afișat nici o eroare, atunci compilarea s-a încheiat cu succes și a fost generat fișierul executabil pentru mașina virtuală, cu extensia .class.
 +
 +
=== Execuția programului în mașina virtuală ===

Versiunea de la data 18 iulie 2012 08:28

Pentru realizarea unui program in Java, sunt necesare două operații: compilarea unui fișer sursă și rularea programului în mașina virtuală. Fișierul sursă, în principiu, se poate scrie în orice editor de text. Pentru Microsoft Windows, o variantă bună este Notepad++. Pentru Linux, în funcție de tipul de interfață, puteți folosi Kate pentru KDE, sau gedit pentru Gnome. În cadrul laboratorului de POO, vom folosi editorul Kate. În laborator, acesta se pornește tastând combinația "Alt + F2", apoi în fereastra care apare tastați kate, apoi tasta enter.

Tutorial pentru lucrul în linia de comandă

Înainte de instrucțiunile de compilare și execuție efective, vom avea nevoie de o introducere în modul de utilizare a consolei în MS Windows și Linux.

MS Windows cmd

În Windows, consola se pornește apăsând combinația "winkey + r", tastând cmd. Ea arată în felul următor:

Consola sistemului de operare Windows

Câteva comenzi utile în linia de comandă:

  • dacă fișierele sursă se află pe altă partiție, cum ar fi D, sau E, comanda care schimbă calea curentă pe partiția D, spre exemplu, este:
c:\Users\Echo> d:
d:\>
  • pentru schimbarea directorului curent, se folosește comanda cd (change directory):
c:\Users\Echo> cd Documents
c:\Users\Echo\Documents> cd work
c:\Users\Echo\Documents\work> cd ..
c:\Users\Echo\Documents>
  • pentru listarea conținutului directorului curent se folosește comanda dir:
C:\Users\Echo\Documents\work\poo> dir
 Volume in drive C has no label.
 Volume Serial Number is 9C96-4AC6

 Directory of C:\Users\Echo\Documents\work\poo

18-Jul-12  10:42    <DIR>          .
18-Jul-12  10:42    <DIR>          ..
18-Jul-12  10:43               117 MainClass.java
               1 File(s)            117 bytes
               2 Dir(s)  22,145,564,672 bytes free

C:\Users\Echo\Documents\work\poo>
  • pentru crearea unui director nou, se folosește comanda md (make directory):
C:\Users\Echo\Documents\work\poo> md test

C:\Users\Echo\Documents\work\poo> dir
 Volume in drive C has no label.
 Volume Serial Number is 9C96-4AC6

 Directory of C:\Users\Echo\Documents\work\poo

18-Jul-12  10:45    <DIR>          .
18-Jul-12  10:45    <DIR>          ..
18-Jul-12  10:43               117 MainClass.java
18-Jul-12  10:45    <DIR>          test
               1 File(s)            117 bytes
               3 Dir(s)  22,145,433,600 bytes free

C:\Users\Echo\Documents\work\poo>

Linux Bash

În Linux, consola se pornește apăsând combinația de taste "Alt + Ctrl + T". Aceasta arată în felul următor:

Consola din Linux

Câteva comenzi utile în linia de comandă:

  • pentru aflarea directorului curent, se folosește comanda pwd (print working directory):
student@olympus07:~$ pwd 
/home/student
student@olympus07:~$
  • pentru schimbarea directorului curent, se folosește comanda cd (change directory):
student@olympus07:~$ cd work
student@olympus07:~/work$ pwd 
/home/student/work
student@olympus07:~/work$ cd ..
student@olympus07:~$ pwd 
/home/student
student@olympus07:~$
  • pentru listarea conținutului directorului curent se folosește comanda ls -l (list structure, long listing format):
student@olympus07:~/work/poo$ ls -l
total 4
-rw-rw-r-- 1 student student 110 Jul 18 11:08 MainClass.java
student@olympus07:~/work/poo$
  • pentru crearea unui director nou, se folosește comanda mkdir (make directory):
student@olympus07:~/work/poo$ mkdir test
student@olympus07:~/work/poo$ ls -l
total 8
-rw-rw-r-- 1 student student  110 Jul 18 11:08 MainClass.java
drwxrwxr-x 2 student student 4096 Jul 18 11:10 test
student@olympus07:~/work/poo$

Scrierea, compilarea și execuția unui program Java

Editarea codului sursă

Primul pas în realizarea unui program Java este scrierea efectivă a codului. Pentru asta, folosiți editorul preferat și salvați fișierul cu extensia .java.

Regulă: Întotdeauna, extensia unui fișier care conține un program Java este .java


Regulă: Întotdeauna, numele clasei conținută într-un fișier .java, trebuie să fie identic cu numele fișierului. Ex: Clasa MainClass trebuie salvată într-un fișier cu extensia MainClass.java. Atenție: Java este case-sensitive!!!

Pentru exemplu, vom realiza următoarea clasă:

public class MainClass{

public static void main(String[] _args){
    System.out.println("Hello world!");
}

}

Această clasă se salvează într-un fișier cu numele MainClass.java.

Compilarea sursei

În consolă, se navighează folosind comenzile prezentate mai sus până în directorul în care a fost salvat fișierul sursă. Apoi, folosind executabilul javac (Java Compiler), se compilează:

student@olympus07:~/work/poo$ javac MainClass.java
student@olympus07:~/work/poo$ ls -l
total 8
-rw-rw-r-- 1 student student 424 Jul 18 11:22 MainClass.class
-rw-rw-r-- 1 student student 110 Jul 18 11:08 MainClass.java
Regulă: Întotdeauna, compilatorul Java va lua ca argument numele fișierului (cu tot cu extensie) care trebuie compilat.

Dacă execuția compilatorului nu a afișat nici o eroare, atunci compilarea s-a încheiat cu succes și a fost generat fișierul executabil pentru mașina virtuală, cu extensia .class.

Execuția programului în mașina virtuală