永发信息网

JAVA内部类使用,什么时候该使用内部类及使

答案:1  悬赏:0  手机版
解决时间 2021-01-09 23:16
JAVA内部类使用,什么时候该使用内部类及使
最佳答案
java中的内部类和接口加在一起,可以的解决常被C++程序员抱怨java中存在的一个问题 没有多继承。
每个内部类都能独立的继承自一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。
1.内部类继承
因为内部类的构造器必须连接到指向其外围类对象的引用,所以在继承内部类的时候使用特殊语法。问题在于,指向外围类对象的引用必须被初始化,而在导出类中不存在可连接的默认对象。所以必须要用特殊语法来明确说清楚他们之间的关联。
[java] view plain copy
class WithInner{  
class Inner{}  
}  
public class InheritInner extends WithInner.Inner{  
InheritInner(WithInner wi){  
wi.super();  
}  
}  
2 内部类覆盖
当继承一个外围类的时候,内部类不会发生什么变化。当明确的继承一个内部类时会发生变化。
[java] view plain copy
public class Egg {  
private Yolk y;  
protected class Yolk {  
public Yolk() {  
System.out.println("Egg.Yolk");  
}  
}  
public Egg() {  
System.out.println("New Egg");  
y = new Yolk();  
}  
}  
[java] view plain copy
public class BigEgg extends Egg {  
public class Yolk {  
public Yolk() {  
System.out.println("BigEgg.yolk()");  
}  
}  
public static void main(String[] args) {  
new BigEgg();  
}  
}  
输出:
New Egg
Egg.Yolk
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
循环经济要求将资源循环利用,如将生产、生活
请问天津有没有锻造厂?
荣世达汽车用品商行地址有知道的么?有点事想
看见我在茶水间为什么徘徊一下再进来
缘来福便利超市这个地址在什么地方,我要处理
在vba中逻辑假值和逻辑真值分别是多少
老师,您好。为何通快3040光纤激光器在正常切
《火影忍 者手游》四代目波风水门究竟有多强
植物刘寄奴名字的来历
我一个朋友名字叫斐渚流,为什么大家都嘲笑他?
我爱上了我老公的妹夫,可是我老对很好,请问
抚远县到抚远东多少公里
贪婪洞窟21到31用什么武器好
衡门的出处与详解
QQ飞车手游现在最好的a车是哪辆
推荐资讯
谁有食物链完整片
之前参与打架了!可打架的时候没去算是犯法吗
plc抢答器3人
歌词中有如果6次以上,女歌手
1、叔叔有万贯家财,只有一个侄子是他的合法
谁有《青春在弄堂里别样生长》阅读答案?
例谈如何提高语文课堂效率
为什么我姐夫老让我掏钱总我身上的钱
巴基斯坦有《破坏中巴友谊罪》吗?
笔记本显卡GTX760M与GTX850M哪个性能好?相差
电脑CPU温度一直维持在80~95度之间降不下来啊
2016年淮南能买房子吗?有升值空间吗?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?