java成员内部类 局部内部类,java内部类总结

  java成员内部类 局部内部类,java内部类总结

  00-1010 I .内部类1。内部类2的概念。内部类别3的定义。内部类和外部类的访问规则4。内部2级预防措施。匿名内部类

  

目录

 

  00-1010内部类是在类中定义的类。

  类在内部将逻辑上相关的类放在一起。有些内部类不会在其他地方使用。它们没有类名。当它们被定义时,这个类的一个实例被生成,这个实例被称为匿名内部类。匿名内部类是一种特殊的内部类。

  当然啦!内部类可以看作外部类的成员,外部类有自己的成员变量和成员方法。通过实例化一个对象,可以访问它的成员变量或调用成员方法。

  00-1010将类的定义放入用于封装它的类中。

  内部类不能与外部类同名。封装它的类内部使用的内部类和普通类是一样的,它所属的外部类的名字要加在外部使用的内部类之前。当用new创建内部类时,还应该在new之前添加对象变量。

  00-1010外部类中,内部类中的成员被内部类对象引用,也是!其外部类的成员也可以在内部类中被直接引用。内部类也可以通过创建对象从外部类调用,但必须在内部声明为public。

  原则:

  对外部类对象的引用保存在内部类对象中。在内部类的成员方法中访问变量时,如果该变量没有在方法或内部类中定义,则调用会传递给内部类对象保存的对外部类的引用,通过外部类对象的引用调用该变量。

  //filename : Group . Java public class Group { private int age;公共类Student { String namepublic Student(String n,int a){ name=n;年龄=a;} public void show(){ system . out . print( name: this . name age: age);} } public void show(){ studentu=新生(张三,18);stu . show();} public static void main(String[]args){ Group g=new Group();g . show();} }//姓名:张三年龄:18

  同样的原则也适用于在内部调用外部类的方法。内部编译完成后,生成的文件名为:外部类名$内部类名. class。

  00-1010内部类定义为抽象类,需要其他内部类来继承或实现。类可以声明为受保护的、内部私有的。内部类不能与包含它的外部类名相同。内部类可以使用外部类的成员变量,也可以使用内部类方法的局部变量。类不仅可以在类中定义,也可以在块中定义。例如,在方法中定义了内部类,但是只能访问方法中最终类型的局部变量。一个类可以声明为静态的,静态的内部类自动转换为顶级类,即没有父类,不能引用外部类或其他内部类的成员。非静态内部类不能声明静态成员,但只有静态内部类才能声明静态成员。

  00-1010表示内部类可以用来创建没有名字的内部类,进一步声明内部类,创建这个类的一个对象。

  创建匿名类的目的是补充内部类中没有定义的方法。匿名内部类直接使用父类的名称或实现接口的名称。匿名类的定义和对象的实例化是同时进行的。匿名类没有名字,所以它的前面不能有访问修饰符或构造函数。因为默认的构造方法没有参数,所以不能创建带参数的对象。

  用法:

  //filename : A _ 1 . Java public class A _ 1 { public static void main(String[]args){(new Inner(){ void set name(String n){ name=n;system . out . print( name: name );}} ).setName(张三);}静态类内部{ String name} }//姓名:张三想法:

  在上面的例子中,创建了一个匿名的内部类对象,但是它没有名字,所以叫做“匿名内部类”。匿名类编译后生成的文件名:外部类名$ No.class .数字是1,2,3…,代表匿名内部类。关于Java超级全面的内部类的使用,这篇文章就讲到这里。关于Java内部类的更多信息,请搜索热门IT之前的文章或者继续浏览下面的相关文章。我希望你以后能更多地支持流行音乐!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: