This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
|
java:static_nested_classes [2017/02/06 13:02] gthanos |
java:static_nested_classes [2018/03/21 10:13] gthanos [Στατικές εμφωλευμένες κλάσεις] |
||
|---|---|---|---|
| Line 16: | Line 16: | ||
| outer = o; | outer = o; | ||
| java.util.Random r = new java.util.Random(); | java.util.Random r = new java.util.Random(); | ||
| - | innerObj = new StaticInnerClass(); | + | innerObj = new StaticInnerClass(r.nextInt(100), r.nextInt(100), |
| - | innerObj.innerPriv = r.nextInt(10000); | + | |
| - | innerObj.innerPub = r.nextInt(10000); | + | |
| } | } | ||
| | | ||
| Line 30: | Line 28: | ||
| public int innerPub; | public int innerPub; | ||
| | | ||
| - | | + | |
| - | | + | this.innerPriv = innerPriv; |
| - | | + | this.innerProt = innerProt; |
| + | this.innerPub = innerPub; | ||
| + | | ||
| | | ||
| public String toString() { | public String toString() { | ||
| Line 42: | Line 42: | ||
| NonStaticOuterClass myOuter = new NonStaticOuterClass(10); | NonStaticOuterClass myOuter = new NonStaticOuterClass(10); | ||
| System.out.println(myOuter.innerObj.toString()); | System.out.println(myOuter.innerObj.toString()); | ||
| - | | + | |
| - | NonStaticOuterClass.StaticInnerClass | + | |
| + | |||
| + | NonStaticOuterClass.StaticInnerClass | ||
| + | System.out.println(myInnerObj2); | ||
| } | } | ||
| } | } | ||
| Line 51: | Line 54: | ||
| Από την μεταγλώττιση και εκτέλεση του παραπάνω κώδικα παρατηρούμε ότι | Από την μεταγλώττιση και εκτέλεση του παραπάνω κώδικα παρατηρούμε ότι | ||
| * αν και η κλάση // | * αν και η κλάση // | ||
| - | * Τα αντικείμενα της στατικής εσωτερικής κλάσης ΔΕΝ ανήκουν στην εξωτερική κλάση, όπως συμβαίνει στις μη στατικές κλάσεις. Στο παραπάνω παράδειγμα, | + | * Τα αντικείμενα της στατικής εσωτερικής κλάσης ΔΕΝ ανήκουν στην εξωτερική κλάση, όπως συμβαίνει στις μη στατικές κλάσεις. Στο παραπάνω παράδειγμα, |
| * Η τελευταία γραμμή της μεθόδου **main** δείχνει ότι οι στατικές εσωτερικές κλάσεις μπορούν να οριστούν ανεξάρτητα από αντικείμενα της εξωτερικής τους κλάσης. Επιβεβαιώστε την αλήθεια του ισχυρισμού μεταγλωττίζοντας και εκτελώντας τον παραπάνω κώδικα. | * Η τελευταία γραμμή της μεθόδου **main** δείχνει ότι οι στατικές εσωτερικές κλάσεις μπορούν να οριστούν ανεξάρτητα από αντικείμενα της εξωτερικής τους κλάσης. Επιβεβαιώστε την αλήθεια του ισχυρισμού μεταγλωττίζοντας και εκτελώντας τον παραπάνω κώδικα. | ||
| </ | </ | ||
| Line 109: | Line 112: | ||
| </ | </ | ||
| - | |Προηγούμενο: | + | |Προηγούμενο: |