diff --git a/w6/Animal.java b/w6/Animal.java new file mode 100644 index 0000000..94d6f08 --- /dev/null +++ b/w6/Animal.java @@ -0,0 +1,5 @@ +package Sound; + +public abstract class Animal { + public abstract void makeSound(); +} diff --git a/w6/Cat.java b/w6/Cat.java new file mode 100644 index 0000000..c42195e --- /dev/null +++ b/w6/Cat.java @@ -0,0 +1,8 @@ +package Sound; + +public class Cat extends Animal{ + @Override + public void makeSound(){ + System.out.println("喵喵"); + } +} diff --git a/w6/Dog.java b/w6/Dog.java new file mode 100644 index 0000000..7e0d040 --- /dev/null +++ b/w6/Dog.java @@ -0,0 +1,12 @@ +package Sound; + +public class Dog extends Animal implements Swimmable{ + @Override + public void makeSound(){ + System.out.println("汪汪"); + } + @Override + public void swim(){ + System.out.println("小狗在游泳"); + } +} diff --git a/w6/Main.java b/w6/Main.java new file mode 100644 index 0000000..1873862 --- /dev/null +++ b/w6/Main.java @@ -0,0 +1,14 @@ +package Sound; + +public class Main{ + public static void main(String[] args){ + Animal dog = new Dog(); + Animal cat = new Cat(); + + dog.makeSound(); + cat.makeSound(); + + Dog myDog = new Dog(); + myDog.swim(); + } +} \ No newline at end of file diff --git a/w6/Swimmable.java b/w6/Swimmable.java new file mode 100644 index 0000000..16a7cde --- /dev/null +++ b/w6/Swimmable.java @@ -0,0 +1,5 @@ +package Sound; + +public interface Swimmable { + public abstract void swim(); +}