Professional Documents
Culture Documents
New Text Document
New Text Document
{
public int start()
{
System.out.println("Enginee internal logic");
return 0;//then return Enginee started success fully
//if return 1 then retry to start Enginee
} //if return 2 then enginee started but it needs maintanace
//if return 3 then enginee not started go to Garage
}
class Mockstartenginee extends Engine
{
}
class Mockretrytostart extends Engine
{
}
class MockstartedbutMaintanace extends Engine
{
}
class MockGotoGarage extends Engine
{
}
}
else if (access==2)
{
System.out.println("enginee started but it needs maintanace");
}
else if (access==3)
{
System.out.println("enginee not started go to Garage");
}
return 10;
}//drive method
}//car class
class Test
{
public static void main(String [] args){
car c1=new car();
c1.drive(1);
}
}===========================================================
abstract class Engine
{
public int start()
{
System.out.println("Enginee internal logic");
return 0;//then return Enginee started success fully
//if return 1 then retry to start Enginee
} //if return 2 then enginee started but it needs maintanace
//if return 3 then enginee not started go to Garage
}
class Mockstartenginee extends Engine
{
}
class Mockretrytostart extends Engine
{
}
class MockstartedbutMaintanace extends Engine
{
}
class MockGotoGarage extends Engine
{
}
class car
{
Engine en;
/*public car(){
en=new Mockstartenginee();
}*/
public car(Engine en){
this.en=en;
}
public int drive(){//3 mode manual,Automated,
// int access=0;
int access=en.start();
if (access==0)
{
System.out.println(" Enginee started press Acelator ");
}
else if(access==1){
System.out.println("then retry to start Enginee");
}
else if (access==2)
{
System.out.println("enginee started but it needs maintanace");
}
else if (access==3)
{
System.out.println("enginee not started go to Garage");
}
return 10;
}//drive method
}//car class
class Test
{
public static void main(String [] args){
car c1=new car(new Mockstartenginee());
c1.drive(1);
}
}