Saturday, May 30, 2015

HighCoupling/BadWay

package package1;

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