public interface NamingChildrenInterface {
public String getNames();
}
---------------------------------------------------------
package package1;
public class Jetha implements NamingChildrenInterface{
@Override
public String getNames() {
return "Bipin Pandey";
}
}
-------------------------------------------------------------
package package1;
public class Maila implements NamingChildrenInterface {
@Override
public String getNames() {
return "Deepen Pandey";
}
}
--------------------------------------------------------------------
package package1;
public class Kancha implements NamingChildrenInterface {
@Override
public String getNames() {
return "Arun Pandey";
}
}
-----------------------------------------------------------------------
package package1;
public class Naming_Intermediate {
// BAD WAY WHICH IS HIGHLY COUPLING
// Getting First Child
public String myNames(Jetha firstChild) {
return firstChild.getNames() ;
}
// Getting Second Child
public String myNames(Maila secondChild) {
return secondChild.getNames() ;
}
// Getting Third Child
public String myNames(Kancha thirdChild) {
return thirdChild.getNames() ;
}
}
------------------------------------------------------------------------------
package package1;
public class MainActivity {
public static void main(String[] args) {
Naming_Intermediate in = new Naming_Intermediate();
String child1 = in.myNames(new Jetha());
String child2 = in.myNames(new Maila());
String child3 = in.myNames(new Kancha());
System.out.println(child1+"\n"+child2 + "\n"+ child3);
}
}
------------------------------------------------------------------------------
No comments:
Post a Comment