Αντικείμενα στη Java. Παύλος Εφραιμίδης. Java Αντικείμενα στη Java 1

Σχετικά έγγραφα
Αντικείμενα (Objects) στην Java. Αντικείμενα στη Java. Δημιουργία Αντικειμένων. Δηλώσεις Μεταβλητών (2) Ο τελεστής new (1)

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.

Βασικά Στοιχεία της Java

HelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1

Βασικά Στοιχεία της Java

Αντικειμενοστρεφής Προγραμματισμός

Κληρονομικότητα. Παύλος Εφραιμίδης pefraimi <at> ee.duth.gr. Java Κληρονομικότητα 1

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές

Αντικειμενοστρεφής Προγραμματισμός

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Παύλος Εφραιµίδης. Java. Κληρονοµικότητα

Κλάσεις στη Java. Στοίβα - Stack. Δήλωση της κλάσης. ΗκλάσηVector της Java. Ηκλάση Stack

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Περισσότερα για τις Κλάσεις, τα Αντικείμενα και τις Μεθόδους

Κλάσεις στη Java. Παύλος Εφραιμίδης. Java Κλάσεις στη Java 1

Αντικειμενοστραφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Κλάσεις και Αντικείµενα

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 17/1/08

1 ΕΙΣΑΓΩΓΗ. Πρωταρχικοί Τύποι

Οντοκεντρικός Προγραμματισμός

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors, equals, tostring

Κατασκευαστές. Μέθοδοι Κατασκευής (Constructors).

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι

Αντικειμενοστρεφής Προγραμματισμός

«ΕΙΔΙΚΑ ΘΕΜΑΣΑ ΣΟΝ ΠΡΟΓΡΑΜΜΑΣΙΜΟ ΤΠΟΛΟΓΙΣΩΝ» Κεφάλαιο 4: Αντικειμενοςτρεφήσ Προγραμματιςμόσ

Εισαγωγή στον Προγ/μό Η/Υ


ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C#

Αντικειμενοστρεφής Προγραμματισμός

Εαρινό. Ύλη εργαστηρίου, Ασκήσεις Java

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Ειδικά Θέματα Προγραμματισμού

9:00-10:00 π.μ. (60 λεπτά) Παρασκευή, 14 Οκτωβρίου, 2016

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

Κλάσεις και αντικείμενα #include <iostream.h<

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα ως ορίσματα Εισαγωγή στις αναφορές

Καλές επιτυχίες παιδιά στα υπόλοιπα μαθήματά σας και καλές γιορτές!!!!

Διάλεξη 5: Κλάσεις και Αντικείμενα. Διδάσκων: Παναγιώτης Ανδρέου

Αντικειμενοστρεφής Προγραμματισμός

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #2

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις

Προγραμματισμός 2 Σημειώσεις εργαστηρίου

Εισαγωγή στον Προγραµµατισµό, Αντώνιος Συµβώνης, ΣΕΜΦΕ, ΕΜΠ,, Slide 6

Οντοκεντρικός Προγραμματισμός

Διάλεξη 2: Επανάληψη Προγραμματισμού Συμβολοσειρές (strings) Διδάσκων: Παναγιώτης Ανδρέου

ΕΠΛ233 Βασικά στοιχεία προγραµµατισµού στη JAVA

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

3. Εκφράσεις και έλεγχος ροής

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

Ειδικά Θέματα Προγραμματισμού

ΜΑΘΗΜΑ: Αντικειμενοστρεφής Προγραμματισμός

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Αντικείμενα ως ορίσματα

Αντικειμενοστρεφής Προγραμματισμός

12. ΑΛΦΑΡΙΘΜΗΤΙΚΑ. υο είδη αλφαριθµητικών Τα αλφαριθµητικά της C πίνακες τύπου char Ta αντικείµενα της κλάσης string

Δομημένος Προγραμματισμός

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 1/4/2008

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Constructors Υπερφόρτωση Αντικείμενα ως παράμετροι

! Ο καλός προγραμματισμός επιβάλλει την αποδοτική χρήση. ! Είναι σημαντικό να καταλαβαίνουμε τις διαδικασίες

Αντικειμενοστρεφής Προγραμματισμός

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 11: Vectors (διανύσματα)

Οντοκεντρικός Προγραμματισμός

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Wrapper Classes Τοποθέτηση Δεδομένων Κλήση Μεθόδων. Παναγιώτης Σφέτσος, PhD

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Παναγιώτης Σφέτσος

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Constructors, equals, tostring Αντικείμενα ως παράμετροι

2.1. Εντολές Σχόλια Τύποι Δεδομένων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα ως ορίσματα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 5 : ΠΕΡΙΣΣΟΤΕΡΑ ΓΙΑ ΤΙΣ CLASSES

ΑΝΑΚΕΦΑΛΑΙΩΣΗ. Τα βασικά για την γλώσσα Java

Εισαγωγή στον Προγραμματισμό με C++

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 4/3/2008

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

2.1 Αντικειµενοστρεφής προγραµµατισµός

Απλές Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες απλές Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλή

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES

Αντικειµενοστρεφής Προγραµµατισµός

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι String Interning

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, :00-10:00 π.μ.

Αντικειμενοστραφείς Γλώσσες Προγραμματισμού C++ / ROOT

2. Προσδιοριστές, δεσμευμένες λέξεις και τύποι

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπερφόρτωση Αντικείμενα σαν ορίσματα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 9 : ΑΦΗΡΗΜΕΝΕΣ ΚΛΑΣΕΙΣ

Transcript:

Αντικείμενα στη Java Παύλος Εφραιμίδης Java Αντικείμενα στη Java 1

Αντικείμενα (Objects) στην Java Ένα πρόγραμμα Java κατά την εκτέλεσή του δημιουργεί αντικείμενα τα αντικείμενα αλληλεπιδρούν, στέλνοντας μηνύματα το ένα στο άλλο Java Αντικείμενα στη Java 2

Δημιουργία Αντικειμένων Point origin = new Point(23, 94); Rectangle rect1=new Rectangle(origin,100,200); Rectangle rect2 = new Rectangle(50,100); Κάθε δήλωση περιλαμβάνει: Δήλωση μεταβλητής (declaration) Δημιουργία Στιγμιοτύπου (instantiation) με τον τελεστή new Αρχικοποίηση με κλήση του Constructor (Initialization), για παράδειγμα Point(23, 94) καλεί τον constructor της κλάσης point με παραμέτρους 23, 94 Java Αντικείμενα στη Java 3

Δηλώσεις Μεταβλητών (1) Οι δηλώσεις μεταβλητών Point origin; Rectangle rec1; Rectangle rec2; δημιουργούν μεταβλητές που αναφέρονται σε αντικείμενα του αντίστοιχου τύπου. Για παράδειγμα, η μεταβλητήorigin μπορεί να αναφέρεται σε αντικείμενα τύπου Point Java Αντικείμενα στη Java 4

Δηλώσεις Μεταβλητών (2) Οι δηλώσεις μεταβλητών ΔΕΝ ΔΗΜΙΟΥΡΓΟΥΝ ΑΝΤΙΚΕΙΜΕΝΑ αλλά αναφορές που μπορούν να δείχνουν σε αντικείμενα. Οι αναφορές μπορεί να είναι κενές (empty) εάν δεν αναφέρονται σε κάποιο συγκεκριμένο αντικείμενο Java Αντικείμενα στη Java 5

Ο τελεστής new (1) Η δυναμική δημιουργία αντικειμένων γίνεται με τον τελεστή new Point origin = new Point( 23, 94); Ο τελεστής new δεσμεύει την απαιτούμενη μνήμη για τη δημιουργία του αντικειμένου και καλεί τον CONSTRUCTOR Ο τελεστής new επιστρέφει την αναφορά στον νέο αντικείμενο Java Αντικείμενα στη Java 6

Ο τελεστής new (2) Η αναφορά που επιστρέφει ένας τελεστής new μπορεί είτε να δοθεί ως τιμή σε μια μεταβλητή Point origin = new Point( 23, 94); είτε να χρησιμοποιηθεί κατευθείαν (ανώνυμα) BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in)); Επιτρέπεται η παρακάτω εντολή; new Point( 10, 20); Αν ναι, έχει νόημα; Java Αντικείμενα στη Java 7

Αναφορές σε Αντικείμενα Java Αντικείμενα στη Java 8

CONSTRUCTOR Όταν δημιουργείται ένα αντικείμενο, δηλαδή ένα νέο στιγμιότυπο μιας κλάσης, καλείται μια μέθοδος που αρχικοποιεί το αντικείμενο: Η μέθοδος αυτή ονομάζεται συνάρτηση δόμησης (constructor) Εάν για μια κλάση δεν δηλωθεί κάποιος constructor ρητά τότε το σύστημα δημιουργεί μόνο του έναν default constructor (ο οποίος ουσιαστικά δεν κάνει τίποτα) Επομένως, κάθε κλάση έχει τουλάχιστον έναν constructor Java Αντικείμενα στη Java 9

CONSTRUCTOR (2) Κάθε κλάση μπορεί να έχει περισσότερους constructors Οι μέθοδοι που είναι constructor έχουντοίδιοόνομαμε την κλάση Παράδειγμα: Για την κλάση Rectangle οι μέθοδοι public Rectangle() {... public Rectangle(Point p) {... public Rectangle(int w, int h) {... public Rectangle(Point p, int w, int h){... είναι 4 constructors για διαφορετικές παραμέτρους. Java Αντικείμενα στη Java 10

Χρησιμοποιώντας τα Αντικείμενα Τι μπορούμε να κάνουμε με ένα αντικείμενο; Μπορούσε να προσπελάσουμε ή να τροποποιήσουμε τις τιμές των ιδιοτήτων (μεταβλητών) του Για παράδειγμα οι μεταβλητές x και y ενός αντικειμένου τύπου Point Μπορούμε να καλέσουμε τις μεθόδους του αντικειμένου Java Αντικείμενα στη Java 11

Μεταβλητές ενός Αντικειμένου (1) Το πλήρες όνομα για να αναφερθούμε σε μια μεταβλητή ενός αντικειμένου είναι: objectreference.variablename Παράδειγμα: rect.width Αναφορά Μεταβλητή System.out.println("Width :" + rect.width); System.out.println("Height:" + rect.height); Java Αντικείμενα στη Java 12

Μεταβλητές ενός Αντικειμένου (2) Κάθε στιγμιότυπο (αντικείμενο) μιας κλάσης έχει τις δικές του (τοπικές) μεταβλητές Μπορούμε για κάθε μέλος μιας κλάσης να καθορίσουμε τα δικαιώματα πρόσβασης (public, protected, package, private) Τι κάνει η παρακάτω εντολή; Έχει νόημα; int height = new Rectangle().height; Java Αντικείμενα στη Java 13

Μεταβλητές ενός Αντικειμένου (3) Τι κάνει η παρακάτω εντολή; Έχει νόημα; int height = new Rectangle().height; Java Αντικείμενα στη Java 14

Μέθοδοι ενός Αντικειμένου Κλήση μιας μεθόδου: objreference.methodname(arglist); και χωρίς παραμέτρους: objreference.methodname(); Τι κάνει η παρακάτω εντολή: int areaofrectangle = new Rectangle(100, 50).area(); Όταν καλούμε μια μέθοδο ενός αντικειμένου είναι σα να στέλνουμε μήνυμα στο αντικείμενο. Java Αντικείμενα στη Java 15

Διαγραφή Αντικειμένων int height = new Rectangle().height; Στη γλώσσα C++ μπορούμε να δημιουργούμε δυναμικά αντικείμενα, όταν όμως ένα αντικείμενο δε χρειάζεται άλλο πρέπει να το διαγράφουμε Στη Java απλά δημιουργούμε και χρησιμοποιούμε αντικείμενα Όταν ένα αντικείμενο στη Java δε χρειάζεται άλλο αναλαμβάνει το JRE (Java Runtime Environment) να το διαγράψει και να απελευθερώσει τη μνήμη που καταλαμβάνει Java Αντικείμενα στη Java 16

Garbage Collector (1) Ο μηχανισμός που διαγράφει αντικείμενα που δε χρησιμοποιούνται, ονομάζεται Garbage Collector (Αποκομιδή Απορριμμάτων) Πως καταλαβαίνουμε ότι ένα αντικείμενο δε χρειάζεται και μπορεί να διαγραφεί; Όταν δεν υπάρχει καμία αναφορά στο αντικείμενο αυτό Java Αντικείμενα στη Java 17

Garbage Collector (2) Πότε καταργείται μια αναφορά σε ένα αντικείμενο; Όταν πάψει να υπάρχει η αναφορά Για παράδειγμα μπορεί να τερματίσει το block ήη μέθοδος στην οποία ορίστηκε η μεταβλητή Όταν τεθεί μια αναφορά σε τιμή null ήσεάλλο αντικείμενο Όταν όλες οι αναφορές σε ένα αντικείμενο καταργηθούν, το αντικείμενο δεν μπορεί πλέον να χρησιμοποιηθείκαιμπορείναδιαγραφεί Java Αντικείμενα στη Java 18

Garbage Collector (3) Ο μηχανισμός του Garbage Collector καλείται αυτομάτως από το JRE Εκτός από την αυτόματη κλήση του Garbage Collector, μια εφαρμογή μπορεί να καλέσει ρητά τον μηχανισμό αυτό εάν το θεωρεί απαραίτητο, για παράδειγμα μετά από κώδικα που δημιουργεί πολύ garbage ή πριν από κώδικα που απαιτεί πολύ μνήμη Κλήση του Garbage Collector (GC) από την κλάση System: System.gc(); Java Αντικείμενα στη Java 19

finalize() Πριν διαγραφεί ένα αντικείμενο από τον GC καλείται η μέθοδος finalize() για το αντικείμενο αυτό Μπορεί έτσι να κλείσει τυχόν εκκρεμότητες πριν διαγραφεί Κατά κανόνα δε χρειάζεται να ασχοληθούμε με τη μέθοδο finalize(), παρά μόνο σε πολύ ειδικές περιπτώσεις: Εάν για παράδειγμα πρέπει να αποδεσμευτούν πόροι που δεν είναι στον έλεγχο του GC Java Αντικείμενα στη Java 20

Παράδειγμα Μετά τις παρακάτω εντολές, μπορεί να αντικείμενο τύπου Point που δημιουργείται στην πρώτη εντολή να διαγραφεί από τον GC; Point point = new Point(2,4); Rectangle rectangle = new Rectangle(point, 20, 20); point = null; Java Αντικείμενα στη Java 21

Παράδειγμα Point point = new Point(2,4); Rectangle rectangle = new Rectangle(point, 20, 20); point = null; Java Αντικείμενα στη Java 22

Αλφαριθμητικά Εκτός από τον βασικό τύπο δεδομένων char που αναπαριστά έναν μεμονωμένο χαρακτήρα, η Java παρέχει τις ακόλουθες κλάσεις: Character: Χειρισμός μεμονωμένων χαρακτήρων String: Χειρισμός αλφαριθμητικών μόνο για ανάγνωση (δεν μπορούν να τροποποιηθούν) StringBuffer: Χειρισμός και τροποποίηση αλφαριθμητικών Java Αντικείμενα στη Java 23

String και StringBuffer (1) ΗκλάσηString χρησιμοποιείται για αναπαράσταση αλφαριθμητικών που δεν μπορούν να τροποποιηθούν Είναι αποδοτική Είναι κατάλληλα για κοινή χρήση, δηλαδή εάν απαιτούνται δύο ίδια String μπορούν να υλοποιηθούν με ένα κοινό αντικείμενο τύπου String Java Αντικείμενα στη Java 24

String και StringBuffer (2) Οι κλάσεις String και StringBuffer έχουν ένα σύνολο από μεθόδους. Παραδείγματα ορισμένων μεθόδων είναι: char[] helloarray = {'h','e','l','l','o' }; String hellostring = new String(helloArray); System.out.println(helloString); String palindrome = "Dot saw I was Tod"; int len = palindrome.length(); StringBuffer dest = new StringBuffer(len); Περισσότερα για τις δυνατότητες των String και StringBuffer υπάρχει στην τεκμηρίωση των κλάσεων αυτών Java Αντικείμενα στη Java 25

Objects και Strings Μετατροπή αντικειμένων σε String: ΗκλάσηObject έχει τη μέθοδο tostring() για μετατροπή ενός αντικειμένου σε String Επιπλέον η κλάση String έχει τη μέθοδο valueof() για να μετατρέπει αντικείμενα άλλων κλάσεων σε String: System.out.println( String.valueOf(Math.PI)); Μετατροπή String σε Αριθμό: Οι wrapper κλάσεις (wrapper classes) Integer, Double, Float, and Long παρέχουν μέθοδο για μετατροπή από String: String pistr = "3.14159"; Float pi = Float.valueOf(piStr); Java Αντικείμενα στη Java 26