diff --git a/w6/Animal.class b/w6/Animal.class new file mode 100644 index 0000000..554a799 Binary files /dev/null and b/w6/Animal.class differ diff --git a/w6/Animal.java b/w6/Animal.java new file mode 100644 index 0000000..b07d6fa --- /dev/null +++ b/w6/Animal.java @@ -0,0 +1,3 @@ +public abstract class Animal { + public abstract void makeSound(); +} \ No newline at end of file diff --git a/w6/Cat.class b/w6/Cat.class new file mode 100644 index 0000000..28e8428 Binary files /dev/null and b/w6/Cat.class differ diff --git a/w6/Cat.java b/w6/Cat.java new file mode 100644 index 0000000..5a0c4b4 --- /dev/null +++ b/w6/Cat.java @@ -0,0 +1,6 @@ +public class Cat extends Animal { + @Override + public void makeSound() { + System.out.println("Meow!"); + } +} \ No newline at end of file diff --git a/w6/Dog.class b/w6/Dog.class new file mode 100644 index 0000000..8c15b1d Binary files /dev/null and b/w6/Dog.class differ diff --git a/w6/Dog.java b/w6/Dog.java new file mode 100644 index 0000000..4880968 --- /dev/null +++ b/w6/Dog.java @@ -0,0 +1,11 @@ +public class Dog extends Animal implements Swimmable { + @Override + public void makeSound() { + System.out.println("Woof!"); + } + + @Override + public void swim() { + System.out.println("Dog is swimming"); + } +} \ No newline at end of file diff --git a/w6/Main.class b/w6/Main.class new file mode 100644 index 0000000..c03af69 Binary files /dev/null and b/w6/Main.class differ diff --git a/w6/Main.java b/w6/Main.java new file mode 100644 index 0000000..282827d --- /dev/null +++ b/w6/Main.java @@ -0,0 +1,14 @@ +public class Main { + public static void main(String[] args) { + Animal[] animals = new Animal[2]; + animals[0] = new Dog(); + animals[1] = new Cat(); + + for (Animal animal : animals) { + animal.makeSound(); + if (animal instanceof Swimmable) { + ((Swimmable) animal).swim(); + } + } + } +} \ No newline at end of file diff --git a/w6/Swimmable.class b/w6/Swimmable.class new file mode 100644 index 0000000..23e4cc7 Binary files /dev/null and b/w6/Swimmable.class differ diff --git a/w6/Swimmable.java b/w6/Swimmable.java new file mode 100644 index 0000000..b7a501e --- /dev/null +++ b/w6/Swimmable.java @@ -0,0 +1,3 @@ +public interface Swimmable { + void swim(); +} \ No newline at end of file