diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c6d544b --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +.idea/ +out/ +*.iml +stale_outputs_checked diff --git a/src/pointer/pet/Cat.java b/src/pointer/pet/Cat.java new file mode 100644 index 0000000..64b7340 --- /dev/null +++ b/src/pointer/pet/Cat.java @@ -0,0 +1,8 @@ +package pointer.pet; + +public class Cat extends Pet { + @Override + void voice() { + System.out.println("I am a cat - meow."); + } +} diff --git a/src/pointer/pet/Cow.java b/src/pointer/pet/Cow.java new file mode 100644 index 0000000..a19572d --- /dev/null +++ b/src/pointer/pet/Cow.java @@ -0,0 +1,8 @@ +package pointer.pet; + +public class Cow extends Pet { + @Override + void voice() { + System.out.println("I am a cow - moo."); + } +} diff --git a/src/pointer/pet/Dog.java b/src/pointer/pet/Dog.java new file mode 100644 index 0000000..c10c40e --- /dev/null +++ b/src/pointer/pet/Dog.java @@ -0,0 +1,8 @@ +package pointer.pet; + +public class Dog extends Pet { + @Override + void voice() { + System.out.println("I am a dog - woof."); + } +} diff --git a/src/pointer/pet/Main.java b/src/pointer/pet/Main.java new file mode 100644 index 0000000..f4d2e1e --- /dev/null +++ b/src/pointer/pet/Main.java @@ -0,0 +1,14 @@ +package pointer.pet; + +public class Main { + + public static void main(String[] args) { + doSound(new Cat()); + doSound(new Dog()); + doSound(new Cow()); + } + + static void doSound(Pet pet) { + pet.voice(); + } +} diff --git a/src/pointer/pet/Pet.java b/src/pointer/pet/Pet.java new file mode 100644 index 0000000..fb3dc14 --- /dev/null +++ b/src/pointer/pet/Pet.java @@ -0,0 +1,5 @@ +package pointer.pet; + +public abstract class Pet { + abstract void voice(); +}