Browse Source

上传文件至 'W6'

main
JiaoYan 4 days ago
parent
commit
7a19988ffc
  1. 26
      W6/AnimalTest.java
  2. 6
      W6/Cat.java
  3. 11
      W6/Dog.java
  4. 3
      W6/Swimmable.java

26
W6/AnimalTest.java

@ -0,0 +1,26 @@
public class AnimalTest {
public static void main(String[] args) {
// 创建动物数组,演示多态
Animal[] animals = new Animal[2];
animals[0] = new Dog();
animals[1] = new Cat();
// 测试多态调用makeSound方法
System.out.println("测试动物叫声:");
for (Animal animal : animals) {
animal.makeSound();
}
// 测试Dog的swim方法
System.out.println("\n测试游泳能力:");
if (animals[0] instanceof Swimmable) {
((Swimmable) animals[0]).swim();
}
if (animals[1] instanceof Swimmable) {
((Swimmable) animals[1]).swim();
} else {
System.out.println("猫不会游泳!");
}
}
}

6
W6/Cat.java

@ -0,0 +1,6 @@
public class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("喵喵喵!");
}
}

11
W6/Dog.java

@ -0,0 +1,11 @@
public class Dog extends Animal implements Swimmable {
@Override
public void makeSound() {
System.out.println("汪汪汪!");
}
@Override
public void swim() {
System.out.println("狗在游泳!");
}
}

3
W6/Swimmable.java

@ -0,0 +1,3 @@
public interface Swimmable {
void swim();
}
Loading…
Cancel
Save