• java匿名内部类举例


    public class Test {
        public static void main(String[] args) {
            //4.匿名内部类
            //主要是针对那些不能直接创建对象的抽象类和接口而来的
            Student stu=new Student();
            System.out.println(stu.getClass());//class com.aowin.noname.Student
            //4.1.通过实体类创建匿名内部类对象
            //相当于创建该类的一个子类对象
            Person p=new Person(){
                public void eat(){
                    System.out.println("吃八元套餐");
                }
            };
            p.eat();
            System.out.println(p.getClass());//class com.aowin.noname.Test$1//系统自动为子类命名Test$1
            
            Dog dog=new Dog();
            dog.bark();
            //4.2.通过抽象类创建匿名内部类对象
            //相当于定义了该抽象类的一个子类对象,并重写了抽象类中所有的抽象方法
            Animal an=new Animal(){
                public void bark(){
                    System.out.println("汪汪汪...");
                }
            };
            an.bark();
            //返回的是包名加类名
            System.out.println(an.getClass());//class com.aowin.noname.Test$2
            
            //4.3.通过接口创建匿名内部类对象
            //相当于定义了该接口的一个实现类对象,并重写了接口中所有的抽象方法
            Sportable s=new Sportable(){
                public void sport(){
                    System.out.println("打篮球");
                }
            };
            s.sport();
            System.out.println(s.getClass());//class com.aowin.noname.Test$3
            
        }
    }
    //实体类
    class Person{
        public void eat(){
            System.out.println("吃饭");
        }
    }
    class Student extends Person{
        public void eat(){
            System.out.println("吃八元套餐");
        }
    }
    //抽象类
    abstract class Animal{
        public abstract void bark();
    }
    class Dog extends Animal{
        public void bark() {
            System.out.println("汪汪...");
        }
    }
    //接口
    interface Sportable{
        public abstract void sport();
    }

  • 相关阅读:
    Java中sleep方法和wait的详细区别
    判断一个字符串中出现次数最多的字符,统计这个次数
    截取字符串abcdefg的efg
    关于正则
    css 的清0
    关于alert
    新感知,可以创建自定义标签
    JS的组成部分
    把字符串首字母变成大写
    排序方法两两对比
  • 原文地址:https://www.cnblogs.com/tiancai/p/8492634.html
Copyright © 2020-2023  润新知