Sunday, February 12, 2017

BÃ i 20 Inner class trong Java

BÃ i 20 Inner class trong Java


Bài 20: Inner class trong Java

Untitled
?
1, Khái ni?m:

M?t class n?m trong class khác ???c g?i là inner class. Inner class có th? coi nh? m?t thu?c tính c?a class. Ngh?a là b?n không th? kh?i t?o ??i t??ng B n?u ch?a kh?i t?o ??i t??ng A.
PHP:
class A{
    class 
B{
    }
}
PHP:
A obj1 = new A();A.B obj2 obj1.new B(); 
B?i class B n?m trong class A nên nó có th? truy c?p t?t c? các thu?c tính hay ph??ng th?c c?a class A
PHP:
class A  {
    private 
int x 8;
    class 
{
        public 
void printInt() {
            
System.out.println(x);
        }
    }
}
?? s? d?ng method v?a t?o, ta có th? vi?t:
obj2.printInt();

2, M?t s? ví d?:

Ví d? 1: Ví d? bên Blog StudyAndShare


?
PHP:
public class DemoJavaAndroidVn {
      public static 
void main(String[] args) {
            
Outer out = new Outer();
            
out.show();
      }
}

class 
Outer {
      public 
void show() {
            
Inner in = new Inner();
            
in.display();
      }

      class 
Inner {
            public 
void display() {
                  
System.out.println("?ây là inner class.");
            }
      }
}

class 
{
      public 
void show() {
            
Outer.Inner in = new Outer().new Inner();
            
in.display();
      }
}
Ví d? 2:
PHP:
package javaandroidvn;

class 
ThoiGian {

    public 
int ngaythangnam;

    class 
Time {

        public 
int giophutgiay;

        public 
void showTime() {
            
System.out.println("Ngày " ngay "/" thang "/" nam);
            
System.out.println("Time: " this.gio ": " this.phut ": " this.giay);
        }
    }
}

public class 
JavaAndroidVn {

    public static 
void main(String[] args) {
        
ThoiGian tg = new ThoiGian();
        
ThoiGian.Time time tg.new Time();
        
tg.ngay 20;
        
tg.thang 7;
        
tg.nam 1996;
        
time.gio 20;
        
time.phut 22;
        
time.giay 01;
        
time.showTime();

    }
}

Ngu?n : Android.vn

Available link for download