Η Java είναι μια απλή αντικειμενοστραφείς γλώσσα προγραμματισμού με απλό συντακτικό χωρίς χρήση δεικτών (όπως στην C++) καθώς η διαχείριση της μνήμης γίνεται από την ίδια την γλώσσα. Είναι μεταγλωττιζόμενη και ερμηνευμένη σε αντίθεση με άλλες γλώσσες οι οποίες είναι compiled γλώσσες. Η δυνατότητα της εκτέλεσης των παραγόμενων προγραμμάτων της σε οποιαδήποτε πλατφόρμα είναι και το δυνατότερο σημείο της, καθώς προσφέρει φορητότητα σε μεγάλο βαθμό. Αυτό σημαίνει πως πχ ένας προγραμματιστής μπορεί να γράψει ένα πρόγραμμα Java σε windows και ύστερα να πάρει το αρχείο που παράχθηκε και να το τρέξει σε ένα μηχάνημα Unix χωρίς καμία αλλαγή, με μόνη προϋπόθεση να υπάρχει εγκατεστημένο στην δεύτερη πλατφόρμα το αντίστοιχο JRE.
Η Java κάνει αυστηρό έλεγχο τύπων και δεν επιτρέπει αυθαίρετες μετατροπές. Παρέχει ένα υψηλό επίπεδο ασφαλείας διότι η εκτέλεση των προγραμμάτων ελέγχεται από μηχανισμούς ασφαλείας που αποτρέπουν κακόβουλο κώδικα. Διαθέτει έμφυτη την υποστήριξη για την ανάπτυξη πολυμεσικών εφαρμογών καθώς επίσης διευκολύνει την υλοποίηση τόσο δικτυακών (network) και διαδικτυακών (web) εφαρμογών. Η αυτόματη διαχείριση της μνήμης γίνεται μέσω ενός υποπρογράμματος που ονομάζεται garbage collector (αποκομιστής απορριμάτων) και έτσι ο προγραμματιστής δεν χρειάζεται να εμπλακεί στην διαδικασία αυτή. Η Java χαρακτηρίζεται από την υψηλή προσαρμοστικότητα της σε διαφορετικά περιβάλλοντα και απαιτήσεις, και είναι ιδανική για την διασύνδεση και επικοινωνία ετερογενών συστημάτων. Η διασύνδεση των δεδομένων και και των μεθόδων γίνεται με την μέθοδο της δυναμικής διασύνδεσης (dynamic binding) όπου αυτά συμβαίνουν κατά την εκτέλεση του προγράμματος (run-time).
Η Ιστορία της Java
- 1991
-
Όταν η Sun Microsystems βρισκόταν σε αναζήτηση ενός κατάλληλου εργαλείου για χρήση ως πλατφόρμα ανάπτυξης λογισμικού για «έξυπνες» μικροσυσκευές τότε ξεκίνησε και η ανάπτυξη της Java. Η πρώτη προσπάθεια της υλοποίησης πραγματοποιήθηκε από τον James Gosling (ο πατέρας της Java) και έγινε με την χρήση της C++ η οποία όμως έδειχνε να είναι ακατάλληλη για τον σκοπό που προοριζόταν η πλατφόρμα. Ως αποτέλεσμα ο Gosling αποφάσισε να δημιουργήσει μια νέα γλώσσα η οποία θα διέθετε αρκετά από τα χαρακτηριστικά της C++ προσθέτοντας αντίστοιχα όλα εκείνα τα χαρακτηριστικά που χρειάζονταν για τον προγραμματισμό μικροσυσκευών.
Ύστερα από μια σειρά ενδιάμεσων γλωσσών (C++ ++) ο Gosling καταλήγει στην Oak(βελανιδιά). Η γλώσσα ονομάστηκε έτσι από μια βελανιδιά που βρισκόταν έξω από το γραφείο του και έβλεπε καθημερινά. Η Oak ήταν σε μεγάλο ποσοστό συγγενής γλώσσα με την C++ αλλά είχε πιο έντονο αντικειμενοστραφή χαρακτήρα. Λίγο αργότερα η ομάδα ανάπτυξης της Oak πληροφορείται πως το συγκεκριμένο όνομα είναι ήδη κατοχυρωμένο και αναγκάζεται να την μετονομάσει σε Java (είδος καφέ). Το όνομα προέκυψε από τις συχνές τους συναντήσεις σε τοπικές καφετέριες.
- 1996
-
Αν και η Java βρέθηκε σε αδιέξοδο διότι η προώθηση των μικροσυσκευών δεν κέντρισε το ενδιαφέρον των επενδυτών, και επομένως δεν υπήρξε χρηματοδότηση την στιγμή εκείνη η Sun ήταν έτοιμη να εγκαταλείψει το project, τότε η ευρεία διάδοση του Ιnternet έστρεψε τα βλέμματα της Sun στις διαδικτυακές εφαρμογές. Έτσι το 1996 έχουμε την πρώτη επίσημη παρουσίαση της Java από την Sun Microsystems, όπου τυγχάνει ευρείας αποδοχής.
Η sun γνωρίζοντας πως η δημιουργία προτύπου είναι απαραίτητη για κάθε σοβαρή γλώσσα προγραμματισμού, προσέγγισε την επιτροπή ISO για την δημιουργία ενός τέτοιου Standar αλλά για άγνωστους λόγους αποσύρθηκε. Από εκείνη την στιγμή και έως και σήμερα η Java παραμένει αυτό που στην βιομηχανία ονομάζεται de facto standard.
- 1998
-
Κυκλοφόρησε η δεύτερη έκδοση της Java η οποία περιείχε αρκετές προσθήκες σε σχέση με την πρώτη έκδοση. Από πολλούς προγραμματιστές ακόμη και σήμερα η συγκεκριμένη έκδοση θεωρείται και η καλύτερη.
- 2004
-
Η επόμενη έκδοση της Java θα καθυστερήσει έξι χρόνια όπου γίνεται η επίσημη παρουσίαση της έκδοσης 5 με την κωδική ονομασία Tiger.
- 2006
-
Δυο χρόνια αργότερα λανσάρεται η Java 6 με κωδική ονομασία Mustang.
- 2011
-
Κυκλοφορεί η Java 7 με κωδική ονομασία Dolphin.
- 2014
-
Κυκλοφορεί η Java 8 με κωδική ονομασία Spider.
- 2017
-
Κυκλοφορεί η Java 9 η οποία είναι και η πρώτη έκδοση μετά από καιρό όπου δεν έχει κάποια κωδική ονομασία.