匿名物件是指建立物件時,只有建立物件的語句,卻沒有把物件位址值賦值給某個變數。
1.建立匿名物件直接使用,沒有變數名。
貓類:
public class cat
}
測試類:
public class test04
}
2.在沒有指定其引用變數時,只能使用一次。若還是按之前的呼叫,則是又建立了乙個物件。
public class test04
}
3.可以作為方法接受的引數、方法返回值使用。
public class test04
//貓玩耍的類,返回值為cat類
private static cat method(cat c)
}
內部類:將類寫在其他類的內部,可以寫在其他類的成員位置和區域性位置,這時寫在其他類內部的類就稱為內部類,通俗的說就是在類裡面建立類,也就是乙個事物裡面包含另乙個事物,其他的類是外部類。
定義在外部類中的成員位置,可通過外部類物件進行訪問。
class 外部類
}
訪問方式:外部類名.內部類名 變數名=new 外部類名().new 內部類名();
外部類:body類;內部類:heart類。
class body
}}
測試類:
public class test03
}
定義在外部類方法中的區域性位置。與訪問方法中的區域性變數相似,可通過呼叫方法進行訪問
class 外部類
}}
區域性內部類:
class party
} //匿名物件類呼叫方法
new food().make();
}}
測試類:
public class test03
}
特點:簡化問題:定義實現類、重寫方法、建立實現類物件、呼叫方法
介面:
public inte***ce play
測試類:
public class test05
//呼叫子類方法
}.play();
}}
小結:
匿名物件使用比較多,主要是為了簡化問題,簡化**。
成員內部類、區域性內部類主要用於類中有類的情況。
內部類(innerclasses) 匿名物件
內部類 把乙個類放在另乙個類的內部定義,稱為內部類。內部類的作用 內部類提供了更好的封裝。只能讓外部類直接訪問,不允許同乙個包中的其他類直接訪問。內部類可以直接訪問外部類的私有屬性,內部類被當成其外部類的成員。但外部類不能訪問內部類的內部屬性。由於內部類提供了更好的封裝特性,並且可以很方便的訪問外部...
內部類,匿名內部類
內部類 概念 自己想到的 內部類是一種可以直接訪問外部類的一類事物 內部類訪問外部類中的成員,包括私有。之所以可以訪問外部類的成員,是因為內部類持有了外部類的乙個引用,格式為 outer.this.x 外部類訪問內部類成員,需要宣告內部類的物件。其他類訪問內部類方法 當內部類處在成員變數的位置時,就...
內部類 匿名內部類
把類定義在其他類的內部,這個類就叫內部類。內部類分為 成員內部類 區域性內部類。內部類訪問特點 內部類可以直接訪問外部類的成員,包括私有。外部類訪問內部類的成員,必須建立物件。區域性內部類是定義在乙個方法或者乙個作用域裡面的類。public class outer 在區域性位置建立內部類物件,調內部...