内部类(匿名内部类)(3)

待我称王封你为后i 2021-07-24 22:29 584阅读 0赞

匿名内部类
匿名内部类,就是一个没有名字的内部类,前提是匿名内部类一定是一个局部内部类。因为匿名内部类没有名字,所以在java中药使用匿名内部类他就必须基于接口或者继承,让大家知道他的父类时谁才能使用。
匿名内部类的格式

  1. new name(参数)
  2. {
  3. ...
  4. }

name: name是父类或者接口
若果name是父类,则括号中是父类的构造方法的参数。
①和局部内部类一样,匿名内部类不能有static成员和方法。
②匿名内部类不具有构造方法。
③不能有静态代码块
④匿名内部类也不能有访问修饰符。.

  1. package innerclass;
  2. public abstract class Animal {
  3. private String name;
  4. public String getname()
  5. {
  6. return name;
  7. }
  8. public void setname(String name) {
  9. this.name= name;
  10. }
  11. public abstract int fly() ;
  12. }
  13. package innerclass;
  14. public class Test {
  15. public void test(Animal animal) {
  16. System.out.println(animal.getname()+"能够飞"+animal.fly()+"米");
  17. }
  18. public static void main(String[] args) {
  19. // TODO 自动生成的方法存根
  20. Test test = new Test();
  21. test.test(new Animal(){
  22. public int fly() {
  23. return 1000;
  24. }
  25. public String getname() {
  26. return "大雁";
  27. }
  28. });
  29. }
  30. }

输出
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,584人围观)

还没有评论,来说两句吧...

相关阅读

    相关 内部匿名内部

    一.内部类 1.什么是内部类? 将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类 2.成员内部类 (1)成员内部类:定义在类中方法