黑马程序员技术交流社区
标题:
java基础
[打印本页]
作者:
zhangyangLengen
时间:
2014-10-31 16:27
标题:
java基础
匿名内部类和一般类什么区别
作者:
zhangyangLengen
时间:
2014-10-31 16:29
内部类是一种类的结构设计,一般指的是一个物体里面还有物体。
作者:
冥夜
时间:
2014-10-31 16:42
内部类就是类中设置了类,和普通类的却别在于:部类可以直接访问外部类中的成员。而外部类想要访问内部类,必须要建立内部类的对象。
当内部类定义在外部类中的成员位置上,可以使用一些成员修饰符修饰 private、static。
1:默认修饰符。
直接访问内部类格式:外部类名.内部类名 变量名 = 外部类对象.内部类对象;
Outer.Inner in = new Outer.new Inner();//这种形式很少用。
但是这种应用不多见,因为内部类之所以定义在内部就是为了封装。想要获取内部类对象通常都通过外部类的方法来获取。这样可以对内部类对象进行控制。
2:私有修饰符。
通常内部类被封装,都会被私有化,因为封装性不让其他程序直接访问。
3:静态修饰符。
如果内部类被静态修饰,相当于外部类,会出现访问局限性,只能访问外部类中的静态成员。
注意;如果内部类中定义了静态成员,那么该内部类必须是静态的。
内部类编译后的文件名为:“外部类名$内部类名.java”;
作者:
zhangyangLengen
时间:
2014-10-31 17:02
嗯,不错
作者:
hanxing
时间:
2014-10-31 20:09
内部类
1.在内的内部直接创建一个接口的一个实现类对象叫匿名内部类(常用)
2.在类的外部如何创建内部类的对象?
@1:对于非静态内部类,必须先创建外部类对象,然后再创建内部类对象。
outClass oc=new outClass();//先创建外部类对象
innerClass ic=oc.new innerClass();//然后创建内部类对象
@2:对于静态内部类,可以用外部类命.内部类名的方法来创建对象
StaticInnerClass sic=new OutClass.StaticInnerClass();
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2