Java小筆記

1:Java類中的成員變量名和方法名是能夠相同的。java

public class Test {
int m=0;
int m(){ return 1;}
public static void main(String[] args){
Test t = new Test();
System.out.println(t.m);
System.out.println(t.m());

}
}
2:實例化非靜態內部類的方法以下: 外圍類.內部類 內部類對象的引用 = 外圍類對象.new 內部類(); 
如:
  1. public class Outer { 
  2.     public static void main(String[] args) { 
  3.         Outer outer = new Outer(); 
  4.         Outer.Inner inner = outer.new Inner(); 
  5.         inner.print("Outer.new"); 
  6.  
  7.         inner = outer.getInner(); 
  8.         inner.print("Outer.get"); 
  9.     } 
  10.  
  11.     // 我的推薦使用getxxx()來獲取成員內部類,尤爲是該內部類的構造函數無參數時 
  12.     public Inner getInner() { 
  13.         return new Inner(); 
  14.     } 
  15.  
  16.     public class Inner { 
  17.         public void print(String str) { 
  18.             System.out.println(str); 
  19.         } 
  20.     } 
3、什麼是嵌套類及內部類?

    能夠在一個類的內部定義另外一個類,這種類稱爲嵌套類(nested classes),它有兩種類型:
靜態嵌套類和非靜態嵌套類。靜態嵌套類使用不多,最重要的是非靜態嵌套類,也便是被稱做爲
內部類(inner)。嵌套類從JDK1.1開始引入。其中inner類又可分爲三種:函數

    其1、在一個類(外部類)中直接定義的內部類;
    其2、在一個方法(外部類的方法)中定義的內部類;
    其3、匿名內部類。spa

4:一、靜態內部類也叫嵌套類,用這個名字給他定義是更加形象的。意思是說內部類和外部類的關係只是層次嵌套關係,因此只是在建立類文件的時候類文件名是以下形式:outer$inner.java,在使用方面徹底和兩個普通類同樣。
二、通常內部類在我看來纔是真正的內部類,他們不只有着嵌套關係,更重要的是內部類能夠得到外部類的引用從而實現回調。並且經過建立內部類還可已讓java實現真正的多繼承!(interface名叫接口,顧名思義,他就是實現接口的,讓一個類繼承多個接口實現多繼承是不合適的)對象

相關文章
相關標籤/搜索