ZhengJiayin 1 month ago
parent
commit
07759c429d
  1. BIN
      w6/Animal.class
  2. 3
      w6/Animal.java
  3. BIN
      w6/AnimalTest.class
  4. 23
      w6/AnimalTest.java
  5. BIN
      w6/Cat.class
  6. 6
      w6/Cat.java
  7. BIN
      w6/Dog.class
  8. 11
      w6/Dog.java
  9. BIN
      w6/Swimmable.class
  10. 3
      w6/Swimmable.java

BIN
w6/Animal.class

Binary file not shown.

3
w6/Animal.java

@ -0,0 +1,3 @@
public abstract class Animal {
public abstract void makeSound();
}

BIN
w6/AnimalTest.class

Binary file not shown.

23
w6/AnimalTest.java

@ -0,0 +1,23 @@
public class AnimalTest {
public static void main(String[] args) {
Animal[] animals = new Animal[2];
animals[0] = new Dog();
animals[1] = new Cat();
for (Animal a : animals) {
a.makeSound();
if (a instanceof Swimmable) {
((Swimmable) a).swim();
}
}
System.out.println("\n--- Testing individual Dog ---");
Dog dog = new Dog();
dog.makeSound();
dog.swim();
System.out.println("\n--- Testing individual Cat ---");
Cat cat = new Cat();
cat.makeSound();
}
}

BIN
w6/Cat.class

Binary file not shown.

6
w6/Cat.java

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

BIN
w6/Dog.class

Binary file not shown.

11
w6/Dog.java

@ -0,0 +1,11 @@
public class Dog extends Animal implements Swimmable {
@Override
public void makeSound() {
System.out.println("Dog says: Woof! Woof!");
}
@Override
public void swim() {
System.out.println("Dog is swimming");
}
}

BIN
w6/Swimmable.class

Binary file not shown.

3
w6/Swimmable.java

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