调用内部类方法:
1.创建外部类对象
外部类名 对象名= new 外部类名();
2创建内部类对象
内部类名 对象名=外部对象名.new 内部类名()
3.调用内部类对象的方法
内部对象名.内部方法名();
1.创建外部类对象
外部类名 对象名= new 外部类名();
2创建内部类对象
内部类名 对象名=外部对象名.new 内部类名()
3.调用内部类对象的方法
内部对象名.内部方法名();
2016-09-30
看到有说感受不到内部类的作用,我来简单说一下帮助理解一下,内部类可以实现更好的封装,在没有用private修饰属性和方法的情况下,默认情况下同一个包中其他类可以通过引用一个对象来调用当前外部类的属性和方法,但是无法创建内部类的对象来引用内部类的属性和方法,保证了内部类中信息的安全性
2016-09-29
public class Initail {public static void main(String[] args) {Animal obj1=new Animal();Animal obj2=new Student();Animal obj3=new Teacher();Animalobj4=newBoos();obj1.people();obj1.thought();obj2.people();
obj2.thought();obj3.people();obj3.thought();obj4.people();obj4.thought();}}
obj2.thought();obj3.people();obj3.thought();obj4.people();obj4.thought();}}
2016-09-29
对于内部类,我的理解是还是体现封装性,保护内部数据访问权限,体现高内聚低耦合的特点。通过外部类的实例化对象来创建内部类的对象,可以理解为要受一点麻烦才能访问到内部类的数据。所以把private级别较高的数据就放到内部类里面。
2016-09-29
...
private static String name="imooc";
...
System.out.println("外部类的name:"+HelloWorld.name);
private static String name="imooc";
...
System.out.println("外部类的name:"+HelloWorld.name);
2016-09-28