diff --git a/day11/src/com/inmind/noname_innercalss04/Animal.java b/day11/src/com/inmind/noname_innercalss04/Animal.java new file mode 100644 index 0000000..cfdc964 --- /dev/null +++ b/day11/src/com/inmind/noname_innercalss04/Animal.java @@ -0,0 +1,6 @@ +package com.inmind.noname_innercalss04; + +//抽象类 +public abstract class Animal { + public abstract void eat(); +} diff --git a/day11/src/com/inmind/noname_innercalss04/Demo07.java b/day11/src/com/inmind/noname_innercalss04/Demo07.java index 930f918..ac74f2f 100644 --- a/day11/src/com/inmind/noname_innercalss04/Demo07.java +++ b/day11/src/com/inmind/noname_innercalss04/Demo07.java @@ -38,8 +38,39 @@ public class Demo07 { }; impl2.method(); - //4.抽象父类的匿名内部类写法 + //4.抽象父类的匿名内部类写法(多态) + Animal animal = new Animal(){ + @Override + public void eat() { + System.out.println("狗吃骨头"); + } + }; + animal.eat(); + + Animal animal1 = new Animal() { + @Override + public void eat() { + System.out.println("猫吃鱼"); + } + }; + animal1.eat(); //5.普通父类的匿名内部类写法 + Person p1 = new Person(){ + @Override + public void drink() { + System.out.println("印度人喜欢喝恒河水"); + } + }; + p1.drink(); + + Person p2 = new Person(){ + @Override + public void drink() { + System.out.println("中国人喝白开水"); + } + }; + p2.drink(); + } } diff --git a/day11/src/com/inmind/noname_innercalss04/Person.java b/day11/src/com/inmind/noname_innercalss04/Person.java new file mode 100644 index 0000000..efda68f --- /dev/null +++ b/day11/src/com/inmind/noname_innercalss04/Person.java @@ -0,0 +1,8 @@ +package com.inmind.noname_innercalss04; + +public class Person { + + public void drink(){ + System.out.println("人喝水"); + } +}