java:class_constructors

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
java:class_constructors [2020/02/08 06:25]
gthanos [Κατασκευαστές της κλάσης]
java:class_constructors [2022/02/22 10:59]
gthanos [Πολλαπλοί κατασκευαστές σε μία κλάση]
Line 55: Line 55:
 με βάση τους [[java:variables#Προεπιλεγμένες τιμές μεταβλητών|κανόνες αυτόματης αρχικοποίησης μεταβλητών]]. με βάση τους [[java:variables#Προεπιλεγμένες τιμές μεταβλητών|κανόνες αυτόματης αρχικοποίησης μεταβλητών]].
  
-===== Πολλαπλοί κατασκευαστές σε μία κλάση =====+===== Διαφορετικοί κατασκευαστές σε μία κλάση =====
  
 Ανάλογη με την υπερφόρτωση μεθόδων είναι και η "υπερφόρτωση" κατασκευαστών. Όπως μπορούμε να έχουμε πολλές μεθόδους με το ίδιο όνομα αλλά διαφορετικά ορίσματα, έτσι μπορούμε να έχουμε και πολλούς κατασκευαστές με διαφορετικά ορίσματα. Δείτε το παράδειγμα που ακολουθεί για την κλάση Rectangle της προηγούμενης ενότητας. Στο παράδειγμα αυτό η κλάση διαθέτει τους παρακάτω δύο κατασκευαστές Ανάλογη με την υπερφόρτωση μεθόδων είναι και η "υπερφόρτωση" κατασκευαστών. Όπως μπορούμε να έχουμε πολλές μεθόδους με το ίδιο όνομα αλλά διαφορετικά ορίσματα, έτσι μπορούμε να έχουμε και πολλούς κατασκευαστές με διαφορετικά ορίσματα. Δείτε το παράδειγμα που ακολουθεί για την κλάση Rectangle της προηγούμενης ενότητας. Στο παράδειγμα αυτό η κλάση διαθέτει τους παρακάτω δύο κατασκευαστές
Line 64: Line 64:
 </code> </code>
  
 +O πρώτος κατασκευαστής λαμβάνει ως τρίτο όρισμα ένα αντικείμενο τύπου Point, το οποίο το αναθέτει στο πεδίο origin. Ο δεύτερος κατασκευαστής λαμβάνει ως τρίτο και τέταρτο όρισμα δύο ακεραίους από τους οποίους κατασκευάζει ένα νέο αντικείμενο τύπου Point.
  
 <code java Rectangle.java> <code java Rectangle.java>
-public class Rectangle {+class Rectangle {
          
   // the Rectangle class has 3 fields   // the Rectangle class has 3 fields
Line 87: Line 88:
          
   // the Rectangel class has 3 methods   // the Rectangel class has 3 methods
-  public void setWidth(int newWidth ) {+  void setWidth(int newWidth ) {
     width = newWidth;     width = newWidth;
   }   }
      
-  public int getWidth() {+  int getWidth() {
     return width;     return width;
   }   }
          
-  public void setHeight(int newHeight ) {+  void setHeight(int newHeight ) {
     height = newHeight;     height = newHeight;
   }   }
      
-  public int getHeight() {+  int getHeight() {
     return height;     return height;
   }   }
      
-  public void setOrigin(Point newOrigin) {+  void setOrigin(Point newOrigin) {
     origin = newOrigin;     origin = newOrigin;
   }   }
      
-  public Point getOrigin() {+  Point getOrigin() {
     return origin;     return origin;
   }      }   
java/class_constructors.txt · Last modified: 2022/02/23 10:17 (external edit)