java question Build Animal Class as abstract class 1 Create

java question

Build Animal Class as abstract class

1. Create 3 subclasses from the Animal class
2. Demonstrate the use of multiple constructors
3. Demonstrate method overriding
4. Use data hiding with private variables and public Get/Set Methods

thanks

Solution

HI, Please find my implementation

Please let me know in case of any implementation.

abstract class Animal {

   private boolean isAPet = true;

   private String name;

   // default constructor

   public Animal(){

       name = \"Not Assigned\";

       System.out.println(\"Animal Default Constructor\");

   }

   // parameterized instructor

   public Animal(String name, boolean isPet){

       System.out.println(\"Animal Parameterized constructor\");

       this.name = name;

       isAPet= isPet;

   }

   public void eat(){

       System.out.println(\"Animal Eating\");

   }

   // getters and setters

   public String getName(){

       return name;

   }

   public boolean isPet(){

       return isAPet;

   }

   public void setName(String name){

       this.name = name;

   }

   public void setIsPet(boolean status){

       isAPet= status;

   }

}

class Cat extends Animal {

   public Cat(){

       System.out.println(\"Cat Default Constructor\");

   }

   public Cat(String name, boolean isPet){

       // calling parent constructor

       super(name, isPet);

       System.out.println(\"Cat Parameterized constructor\");

   }

   // method overriding

   public void eat(){

       System.out.println(\"Cat Eating\");

   }

}

class Lion extends Animal {

   public Lion(){

       System.out.println(\"Cat Default Constructor\");

   }

   public Lion(String name, boolean isPet){

       // calling parent constructor

       super(name, isPet);

       System.out.println(\"Lion Parameterized constructor\");

   }

   // method overriding

   public void eat(){

       System.out.println(\"Lion Eating\");

   }

}

class Dog extends Animal {

   public Dog(){

       System.out.println(\"Cat Default Constructor\");

   }

   public Dog(String name, boolean isPet){

       // calling parent constructor

       super(name, isPet);

       System.out.println(\"Dog Parameterized constructor\");

   }

   // method overriding

   public void eat(){

       System.out.println(\"Dog Eating\");

   }

}

public class AnimalTest{

   public static void main(String[] args) {

      

       Animal[] animals = {

               new Cat(\"Cat\", true),

               new Dog(\"Dog\", true),

               new Lion(\"Lion\", false)

       };

  

  

   for(Animal animal : animals){

       System.out.println(animal.getName()+\", \"+animal.isPet());

       animal.eat();

       System.out.println();

      

   }

}

}

/*

Sample Run:

Animal Parameterized constructor

Cat Parameterized constructor

Animal Parameterized constructor

Dog Parameterized constructor

Animal Parameterized constructor

Lion Parameterized constructor

Cat, true

Cat Eating

Dog, true

Dog Eating

Lion, false

Lion Eating

*/

java question Build Animal Class as abstract class 1. Create 3 subclasses from the Animal class 2. Demonstrate the use of multiple constructors 3. Demonstrate m
java question Build Animal Class as abstract class 1. Create 3 subclasses from the Animal class 2. Demonstrate the use of multiple constructors 3. Demonstrate m
java question Build Animal Class as abstract class 1. Create 3 subclasses from the Animal class 2. Demonstrate the use of multiple constructors 3. Demonstrate m
java question Build Animal Class as abstract class 1. Create 3 subclasses from the Animal class 2. Demonstrate the use of multiple constructors 3. Demonstrate m

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site