Return to Προγραμματισμός

Java

[Τελευταία ενημέρωση 22-3-2014]

Java

Προήλθε από τη C και της μοιάζει αρκετά στη δομή της

Είναι γλώσσα νέα, σχετικά, με κύρια χαρακτηριστικά:

  • κατάλληλη για το web

  • ‘τρέχει’ παντού, σε οποιαδήποτε οικογένεια επεξεργαστών και Λ.Σ.

  • αντικειμενοστραφής

  • γεγονοστραφής

Εκτέλεση προγραμμάτων σε Java

Τρέχει παντού, λόγω του JVM (Java Virtual Machine) το οποίο υπάρχει σχεδόν για οποιαδήποτε πλατφόρμα. Το JVM είναι ένα ενδιάμεσο επίπεδο του λειτουργικού μας συστήματος που ουσιαστικά εκτελεί τον κώδικα. Άρα για να τρέξει java ένα μηχάνημα πρέπει να έχει εγκατεστημένο το JVM ή αλλιώς και JRE (Java Runtime Enviroment).

Μέχρι εδώ τρέχουμε Java προγράμματα στον υπολογιστή μας.

Για να δούμε εάν και ποιά έκδοση της Java έχουμε εγκατεστημένη στον υπολογιστή μας αρκεί να γράψουμε σε γραμμή εντολών (Start ή Έναρξη > Run ή εκτέλεση > cmd > ENTER):

java -version

Δημιουργία προγραμμάτων σε Java από τη γραμμή εντολών

Για να δημιουργήσουμε τα δικά μας προγράμματα πρέπει να εγκαταστήσουμε το Java Development Kit (JDK) και συνήθως την έκδοση SE (Standard Edition) την οποία κατεβάζουμε από την σχετική ιστοσελίδα της ORACLE.

Βήματα δημιουργίας κώδικα:

  1. Με έναν επεξεργαστή κειμένου γράφουμε τον κώδικα με εντολές της java. Αποθηκεύουμε το αρχείο με κατάληξη .java (άρα τα .java αρχεία είναι αρχεία απλού κειμένου ή αλλιώς πηγαίου κώδικα ή source code).

  2. Με το πρόγραμμα javac.exe που είναι ο compiler της Java και εφόσον δεν υπάρχουν συντακτικά λάθη, το πρόγραμμά μας μεταγλωττίζεται σε αρχείο της μορφής .class το οποίο πλέον δεν είναι απλό αρχείο κειμένου αλλά της μορφής Java Byte Code και το οποίο τρέχει μέσα από το JRE.

  3. Εκτελούμε το αρχείο .class μέσω του προγράμματος java.exe

Για παράδειγμα, έστω ότι έχουμε δημιουργήσει το 1ο μας πρόγραμμα με όνομα tryjaving.java το οποίο βρίσκεται μέσα στον φάκελο C:\nikosjava.

Τα προγράμματα javac.exe και java.exe που πρέπει να χρησιμοποιήσω, την ώρα που έγραφα το παρόν κείμενο, βρίσκονται στον δικό μου παλιό ΗΥ (με Win XP) στον φάκελο:

C:\Program Files\Java\jdk1.7.0_45\bin

Άρα από τη γραμμή εντολών πηγαίνω στον φάκελο C:\nikosjava όπου εκεί βρίσκεται το αρχείο μου

tryjaving.java.

Για να το συμβολομεταφράσω από τη γραμμή εντολών, γράφω:

C:\Program Files\Java\jdk1.7.0_45\bin\javac tryjaving.java

και στη συνέχεια για να το εκτελέσω πρέπει να γράψω:

C:\Program Files\Java\jdk1.7.0_45\bin\java tryjaving

Καλά! Θα μου πείτε, κάθε φορά πρέπει να γράφω όλο το μακρινάρι για το πού βρίσκονται τα javac.exe και java.exe για να τρέξω κάθε πρόγραμμά μου;

ΕΥΤΥΧΩΣ υπάρχει τρόπος να πω στον ΗΥ που θα βρει τα απαραίτητα προγράμματα javac και java ώστε να μην χρειάζεται να δίνω κάθε φορά την πλήρη διαδρομή του φακέλου στον οποία τοποθετήθηκαν όταν εγκαταστήσαμε το JDK της Java. Για να το κάνω θα πρέπει να πειράξω την μεταβλητή συστήματος PATH των Windows. Στη συνέχεια περιγράφω την διαδικασία για τα Windows XP:

Έναρξη > Πίνακας Ελέγχου > Σύστημα > Για προχωρημένους > Μεταβλητές περιβάλλοντος > στην περιοχή ‘Μεταβλητές’ επιλέγω τη μεταβλητή ‘Path και κάνω κλικ στο ‘Επεξεργασία’ > Στο νέο παράθυρο “Επεξεργασία μεταβλητής συστήματος” εισάγω στην αρχή του πεδίου “Τιμή μεταβλητής:” το εξής:

C:\Program Files\Java\jdk1.7.0_45\bin;

Προσοχή να βάλετε στο τέλος το “;” και προφανώς τον σωστό κατάλογο από το jdk. Ήδη όταν θα διαβάζετε το κείμενο θα έχει βγει νέο jdk της java και άρα θα έχει αλλάξει και ο κατάλογος εγκατάστασης. Θα πρέπει να βάλετε τον ΤΡΕΧΩΝ φάκελο που έχετε στον ΗΥ σας και όχι τον ‘…\jdk1.7.0_45\….’

Κάντε μία επανεκκίνηση τον ΗΥ σας και αν όλα έγιναν ΟΚ τότε για το παραπάνω παράδειγμα συμβολομετάφρασης και εκτέλεσης του προγράμματος tryjaving.java αρκεί πλέον να γράψετε:

javac tryjaving.java

java tryjaving

ΟΚ; 🙂

Σημείωση 1: Για να βρείτε οδηγίες ώστε να ορίσετε σωστά το PATH και το CLASSPATH για οποιοδήποτε λειτουργικό σύστημα κάντε κλικ στο;

http://docs.oracle.com/javase/tutorial/essential/environment/paths.html

Για την περίπτωση που θέλουμε να χρησιμοποιήσουμε τη βιβλιοθήκη acm τότε π.χ. για να εκτελέσουμε το πρόγραμμα HelloWorld.java (αφού έχουμε αντιγράψει μέσα στον φάκελο το αρχείο acm.jar) εκτελούμε τις εντολές:

  • javac -classpath acm.jar HelloWorld.java

από το οποίο παράγεται το αρχείο HelloWorld.class

  • java -cp .;acm.jar HelloWorld

Σημείωση 2: Για να μην αντιγράφουμε κάθε φορά το αρχείο acm.jar στον φάκελο κάθε αρχείου .java που δημιουργούμε (το οποίο χρειάζεται για να κάνουμε import τις απαιτούμενες βιβλιοθήκες) αρκεί να αντιγράψουμε το acm.jar στον φάκελο /bin της java τον οποίο προσθέσαμε στο path της Σημ.1.

Notepad++ και Java

  • Εγκαθιστώ το Notepad++

  • Εγκαθιστώ το πρόσθετο NppExec

  • Πατώ F6

    • στο παράθυρο που εμφανίζεται γράφω:

cd $(CURRENT_DIRECTORY)

javac $(FILE_NAME)

java $(NAME_PART)

Αν θέλω να χρησιμοποιήσω και τη βιβλιοθήκη acm τότε γράφω τα εξής:

cd $(CURRENT_DIRECTORY)

javac -cp acm.jar $(FILE_NAME)

java -cp .;acm.jar $(NAME_PART)

  • Το αποθηκεύω π.χ. με όνομα “java_Comp_&_Run”

Από εδώ και πέρα μπορώ να τρέχω τις εντολές javac και java κατευθείαν αν πατήσω F6 (εμφανίζεται το παράθυρο Execute του NppExec) και επιλέξω το script java_Comp_&_Run” που δημιούργησα πιο πριν.

Σημείωση: μπορώ να επιταχύνω ακόμη περισσότερο τη διαδικασία μετατρέποντας το script σε Μακροεντολή και αντιστοιχώντας κάποια συντόμευση πληκτρολογίου ως εξής:

  • Πρόσθετα > NppExec > AdvancedOptions

  • Ανοίγει το παράθυρο “NppExecAdvanced Options

  • Στο μενού “Associated script:” επιλέγω το script που δημιούργησα (π.χ. το java_Comp_&_Run) και δίνω ένα νέο όνομα ή αφήνω το ίδιο στο πεδίο ‘Item name

  • Πατώ το κουμπί ‘Add/Modify’

  • Εμφανίζεται μια προτροπή για επανεκκίνηση του Notepad++ στην οποία και συμφωνούμε.

  • Ανοίγουμε ξανά το Notepad++ και πλέον μπορώ να επιλέξω πλέον το script μου κατευθείαν από το μενού Μακροεντολή‘!

  • Για να του αναθέσω και μια συντόμευση πληκτρολογίου:

    • Μακροεντολή > Αλλαγή συντόμευσης/ Διαγραφή μακροεντολής

    • βρίσκω το script στην καρτέλα ‘Plugin commands‘ με το όνομα που του έδωσα και το συνδέω με μία συντόμευση πληκτρολογίου π.χ. CTRL+0

Permanent link to this article: http://users.sch.gr/nikmavr/%cf%80%cf%81%ce%bf%ce%b3%cf%81%ce%b1%ce%bc%ce%bc%ce%b1%cf%84%ce%b9%cf%83%ce%bc%cf%8c%cf%82/java/

Leave a Reply

Your email address will not be published.

The maximum upload file size: 2 MB. You can upload: image, audio, video, document, spreadsheet, interactive, text, archive, code, other. Links to YouTube, Facebook, Twitter and other services inserted in the comment text will be automatically embedded. Drop file here

This site uses Akismet to reduce spam. Learn how your comment data is processed.