国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

內(nèi)部類和匿名內(nèi)部類

2019-11-14 21:50:13
字體:
供稿:網(wǎng)友
內(nèi)部類和匿名內(nèi)部類

什么是內(nèi)部類?

在一個類的內(nèi)部再定義一個類

class A{int i;class B{//B是A的內(nèi)部類int j;int funB(){//int result = A.this.i + this.j; 等同于int result = i + j;return result;}}}

對a.java進(jìn)行編譯后,除了生成A.class外還有個A美元符B.class(內(nèi)部類所生成的類文件。外部類美元符內(nèi)部類.class),在B當(dāng)中可以任意使用(并非擁有)A的成員變量和成員函數(shù),B并非繼承了A

class Test{public static void main(String args[]){A a = new A();//生成內(nèi)部類對象A.B b = a.new B();a.i = 2;b.j = 4;int result = b.funB();System.out.PRintln(result);}}

生成內(nèi)部類對象時首先要有外部類:

A a = new A();A.B b = a.new B();

匿名內(nèi)部類舉例

interface A{public void doSomething();}
class aImp implements A{public void doSomething(){System.out.println("做事");}}
class B{public void fun(A test){System.out.println("B的fun函數(shù)");test.doSomething();}}
class Test{public static void main(String args[]){B b = new B();//匿名內(nèi)部類b.fun(new A(){ //與aImp的區(qū)別在于沒有命名,用于實(shí)現(xiàn)接口Apublic void doSomething(){System.out.println("開始做事");}});}}

當(dāng)需要調(diào)用B的fun方法時,需要A類型的參數(shù)傳入


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 泗洪县| 桂林市| 巴青县| 洛川县| 永兴县| 温宿县| 张家港市| 新源县| 昭觉县| 九江县| 府谷县| 高雄县| 屏东市| 永和县| 高陵县| 蕉岭县| 利辛县| 通榆县| 大荔县| 杭锦后旗| 荥阳市| 瓦房店市| 全椒县| 静宁县| 含山县| 车致| 绥棱县| 那坡县| 马尔康县| 独山县| 峨眉山市| 井冈山市| 梁山县| 大化| 聂拉木县| 双柏县| 乾安县| 沂南县| 凌云县| 冕宁县| 鱼台县|