diff --git a/day10/src/com/inmind/poly08/Animal.java b/day10/src/com/inmind/poly08/Animal.java index 9dc1e57..53fe914 100644 --- a/day10/src/com/inmind/poly08/Animal.java +++ b/day10/src/com/inmind/poly08/Animal.java @@ -9,6 +9,10 @@ public class Animal { System.out.println("动物跑"); } + public void sleep(){ + System.out.println("动物睡"); + } + public void getNumFu(){ System.out.println(numFu); } diff --git a/day10/src/com/inmind/poly08/Cat.java b/day10/src/com/inmind/poly08/Cat.java index 3fc9a5d..6d7a0d0 100644 --- a/day10/src/com/inmind/poly08/Cat.java +++ b/day10/src/com/inmind/poly08/Cat.java @@ -8,6 +8,11 @@ public class Cat extends Animal{ System.out.println("猫闪着跑,闪身步"); } + @Override + public void sleep() { + System.out.println("猫卷着在猫窝上睡"); + } + public void getNumZi(){ System.out.println(numZi); } diff --git a/day10/src/com/inmind/poly08/Demo09.java b/day10/src/com/inmind/poly08/Demo09.java new file mode 100644 index 0000000..73710a4 --- /dev/null +++ b/day10/src/com/inmind/poly08/Demo09.java @@ -0,0 +1,31 @@ +package com.inmind.poly08; +/* +多态的核心好处:“以不变,应万变”---通过抽象定义统一接口,应对具体实现的变化。它让代码简洁,灵活,更容易扩展。 + */ +public class Demo09 { + public static void main(String[] args) { + //让狗和猫,或其他一些动物,去展示跑,睡的行为 + Dog dog = new Dog(); + /*dog.run(); + dog.sleep();*/ + show(dog); + Cat cat = new Cat(); + /*cat.run(); + cat.sleep();*/ + show(cat); + } + + //封装一个方法来调用动物跑和睡的行为 + public static void show(Animal animal) {//多态的好处!!!!! + animal.run(); + animal.sleep(); + } + /*public static void show(Dog dog) { + dog.run(); + dog.sleep(); + } + public static void show(Cat cat) { + cat.run(); + cat.sleep(); + }*/ +} diff --git a/day10/src/com/inmind/poly08/Dog.java b/day10/src/com/inmind/poly08/Dog.java index cbe937a..f0e83b1 100644 --- a/day10/src/com/inmind/poly08/Dog.java +++ b/day10/src/com/inmind/poly08/Dog.java @@ -5,4 +5,9 @@ public class Dog extends Animal{ public void run() { System.out.println("狗哆嗦地跑"); } + + @Override + public void sleep() { + System.out.println("狗在大街上四脚朝天睡"); + } }