当前位置: 代码迷 >> Eclipse >> 书下的例题 关于内部类的 不懂
  详细解决方案

书下的例题 关于内部类的 不懂

热度:469   发布时间:2016-04-23 02:00:45.0
书上的例题 关于内部类的 不懂求助
public class China {
final String song="义勇军进行曲";
private Beijing beijing;
China(){
beijing=new Beijing();
}
public Beijing getBeijing(){//这句不懂?什么东东哟 方法?返回类型beijing?
return beijing;
}
String getSong(){
return song;
}
class Beijing{
String name="北京";
void speak(){
System.out.printf("%s\n%s","我们是"+name,"我们的国歌是:"+getSong());


}
}

}

------最佳解决方案--------------------
引用:
public class China {
final String song="义勇军进行曲";
private Beijing beijing;
China(){
beijing=new Beijing();
}
public Beijing getBeijing(){//这句不懂?什么东东哟 方法?返回类型beijing?
return beijing;……


内部类就是只有在China里面才能使用Beijing,外面是不能看见的。

China c = new China(); 
Beijing b = c.getBeijing();

上面这种使用会报编译错误,因为Beijing这个类型对外面是不可见的。
但是能正常使用c.getBeijing();但是不能转换成Beijing这个类型。可以转换成Object

China c = new China(); 
Object b = c.getBeijing();


通常内部类就是在内部使用,方便封装,对外面不可见,安全一些。
------其他解决方案--------------------
java内部类小结
------其他解决方案--------------------
O(∩_∩)O谢谢 受益匪浅啊
------其他解决方案--------------------
楼主是学的《JAVA面向对象程序设计》!!!书上写的很明白啊
  相关解决方案