User Tools

Site Tools


java:inner_class_access

Differences

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

Link to this comparison view

Next revision
Previous revision
Next revision Both sides next revision
java:inner_class_access [2017/02/03 13:18]
gthanos created
java:inner_class_access [2021/04/12 05:48]
gthanos [Πρόσβαση από την εξωτερική κλάση σε πεδία της εσωτερικής κλάσης]
Line 1: Line 1:
 ====== Προσβασιμότητα πεδίων και μεθόδων μεταξύ εσωτερικής και εξωτερικής κλάσης ====== ====== Προσβασιμότητα πεδίων και μεθόδων μεταξύ εσωτερικής και εξωτερικής κλάσης ======
- 
  
 ===== Πρόσβαση στα πεδία της εξωτερικής κλάσης (από την εσωτερική κλάση) ===== ===== Πρόσβαση στα πεδία της εξωτερικής κλάσης (από την εσωτερική κλάση) =====
Line 45: Line 44:
      
   private class InnerClass {   private class InnerClass {
-  +    //inner class has not fields 
 +    
     public InnerClass(int p, int pp, int pr, int pu) {     public InnerClass(int p, int pp, int pr, int pu) {
       outerPriv = p;       outerPriv = p;
Line 68: Line 68:
 </code> </code>
  
-<WRAP important 80% center round>+<WRAP tip 80% center round>
 Από το παραπάνω παράδειγμα, παρατηρούμε ότι η εσωτερική κλάση έχει πρόσβαση σε όλα τα πεδία και τις μεθόδους της εξωτερικής κλάσης, ανεξάρτητα από τον προσδιοριστή πρόσβασης που έχουν αυτά. Από το παραπάνω παράδειγμα, παρατηρούμε ότι η εσωτερική κλάση έχει πρόσβαση σε όλα τα πεδία και τις μεθόδους της εξωτερικής κλάσης, ανεξάρτητα από τον προσδιοριστή πρόσβασης που έχουν αυτά.
 </WRAP> </WRAP>
Line 76: Line 76:
 Το παρακάτω παράδειγμα εξηγεί την προσβασιμότητα της εξωτερικής κλάσης σε πεδία και μεθόδους της εσωτερικής κλάσης. Το παρακάτω παράδειγμα εξηγεί την προσβασιμότητα της εξωτερικής κλάσης σε πεδία και μεθόδους της εσωτερικής κλάσης.
  
-<code java OuterClass.java> +<code java AccessInnerClassFromOuterClass.java> 
-public class OuterClass {+public class AccessInnerClassFromOuterClass {
   int outer;   int outer;
   InnerOuterClass innerObj;   InnerOuterClass innerObj;
  
-  public OuterClass(int o) {+  public AccessInnerClassFromOuterClass(int o) {
     outer = o;     outer = o;
     innerObj = new InnerOuterClass();     innerObj = new InnerOuterClass();
Line 105: Line 105:
      
   public static void main(String[] args) {   public static void main(String[] args) {
-    OuterClass outer = new OuterClass(5);+    AccessInnerClassFromOuterClass outer = new AccessInnerClassFromOuterClass(5);
   }     }  
 } }
Line 112: Line 112:
 Όπως θα παρατηρήσετε αν μεταγλωττίσετε και εκτελέσετε το πρόγραμμα η εξωτερική κλάση έχει απόλυτη πρόσβαση στα πεδία και τις μεθόδους της εσωτερικής κλάσης ανεξάρτητα από τον προσδιοριστή πρόσβασης που έχουν αυτά. Η πρόσβαση της εξωτερικής κλάσης στα πεδία της εσωτερικής γίνεται πάντα μέσω ενός αντικειμένου της εξωτερικής κλάσης. Όπως θα παρατηρήσετε αν μεταγλωττίσετε και εκτελέσετε το πρόγραμμα η εξωτερική κλάση έχει απόλυτη πρόσβαση στα πεδία και τις μεθόδους της εσωτερικής κλάσης ανεξάρτητα από τον προσδιοριστή πρόσβασης που έχουν αυτά. Η πρόσβαση της εξωτερικής κλάσης στα πεδία της εσωτερικής γίνεται πάντα μέσω ενός αντικειμένου της εξωτερικής κλάσης.
  
-<WRAP important 80% center round>+<WRAP tip 80% center round>
   * H εσωτερική κλάση έχει πρόσβαση σε όλα τα πεδία της εξωτερικής κλάσης.   * H εσωτερική κλάση έχει πρόσβαση σε όλα τα πεδία της εξωτερικής κλάσης.
   * Η εξωτερική κλάση έχει πρόσβαση σε όλα τα πεδία της εσωτερικής κλάσης. Η πρόσβαση στα πεδία αυτά γίνεται μέσω ενός αντικειμένου της εξωτερικής κλάσης.   * Η εξωτερική κλάση έχει πρόσβαση σε όλα τα πεδία της εσωτερικής κλάσης. Η πρόσβαση στα πεδία αυτά γίνεται μέσω ενός αντικειμένου της εξωτερικής κλάσης.
Line 119: Line 119:
 </WRAP> </WRAP>
  
 +| Προηγούμενο : [[ :java:inner_class_objects | Δημιουργία αντικειμένων της εσωτερικής κλάση ]] | [[ :toc | Περιεχόμενα ]] | Επόμενο: [[ :java:inner_class_inheritance | Κληρονομικότητα εσωτερικών κλάσεων ]]  |
java/inner_class_access.txt · Last modified: 2021/04/12 04:48 (external edit)