There are 2 classes, 1 LandAnimal and another WaterAnimal.
There is another class Animal which wants to have the
properties of both LandAnimal and WaterAnimal. How will you
design this situation?

Answers were Sorted based on User's Feedback



There are 2 classes, 1 LandAnimal and another WaterAnimal. There is another class Animal which want..

Answer / bhaskr reddy

interface LandAnimals {

class LandAnimal {

// define the Land Animal prperties
}
}

interface WaterAnimals{

class WaterAnimal{

// define the Water Animal prperties
}
}

Now define the "Animal" class by implementing the two
interfaces(WaterAnimals and LandAnimals ).

Note1 : Java supports defining the class inside an
interface.

Note 2 : In the previous answer somebody has defined two
seperate classes for WaterAnimal and Land animal
and his LandAnimal extends WaterAnimal then LandAnmal
becomes the Water animal this is poor object orientation.

Is This Answer Correct ?    18 Yes 1 No

There are 2 classes, 1 LandAnimal and another WaterAnimal. There is another class Animal which want..

Answer / abdul

class WaterAnimal
{
// code
}
class LandAnimal extends WaterAnimal
{
//This class has WaterAnimal properties
}
class Animal extends LandAnimal
{
//This class has both LandAnimal and WaterAnimal properties
}

Is This Answer Correct ?    10 Yes 9 No

There are 2 classes, 1 LandAnimal and another WaterAnimal. There is another class Animal which want..

Answer / sahaj

[note:landanimal and wateranimal both behave as base class
and the other one behave as derieved class]

#include<iostream.h>
#include<conio.h>
class landanimal
{
void print();
{
cout<<"this is base class"<<endl;
}};
class wateranimal
{
void display();
{
cout<<"this is another base class"<<endl:
}};
class animal:public landanimal,public wateranimal
{
void disp();
{
cout<<"this is derieved class"<<endl;
}};
void main()
{
animal a;
a.print();
a.display();
a.disp();
getch();
}

Is This Answer Correct ?    1 Yes 0 No

There are 2 classes, 1 LandAnimal and another WaterAnimal. There is another class Animal which want..

Answer / kash

@ Bhaskr Reddy

The only problem I see with your solution is when I want to create the object Animal which has to implement properties from both WaterAnimal and LandAnumal: How will I create an instance of of class Animal which implements both the interfaces at the same time?

Is This Answer Correct ?    0 Yes 0 No

There are 2 classes, 1 LandAnimal and another WaterAnimal. There is another class Animal which want..

Answer / suganya from tamilnadu

class Animal
{
// code
}
class LandAnimal extends Animal
{
//This class has WaterAnimal properties
}
class WaterAnimal extends Animal
{
//This class has both LandAnimal and WaterAnimal properties
}

Is This Answer Correct ?    1 Yes 4 No

There are 2 classes, 1 LandAnimal and another WaterAnimal. There is another class Animal which want..

Answer / vikneswarank

class LandAnimal
{
//some code here

}
class WaterAnimal extends LandAnimal
{
//soma code here
}
class Animal extends landAnimal
{
// here we can access properties both class
}

Is This Answer Correct ?    2 Yes 19 No

Post New Answer

More Core Java Interview Questions

What is variable explain?

0 Answers  


What advantage does an entity bean have over a sessin bean?

3 Answers   Adobe,


why we are calling j2se why not j1se or j3se or j4se..etc is there any reason.. can u please explain it... i shocked in my interview when they asked this question please explain ans

2 Answers   Infosys,


Which method cannot be overridden in java?

0 Answers  


How do you define a parameter?

0 Answers  






what is an anonymous class?

6 Answers   TCS,


Explain about field hiding in java?

0 Answers  


What modifiers are used with a top level class?

3 Answers  


What is the difference between exception and error in java?

0 Answers  


How many bits is a 64 bit byte?

0 Answers  


What are the 2 types of java programs?

0 Answers  


what is main purpose of interface?

2 Answers   Accenture, HCL, NIIT,


Categories