// angela's class public class RegisterNewUser { public void makeSureLoginAndPasswordAreValid(String loginName, String password) { ValidateData validateData = new AngelasPretendValidation(); // this gets a simple implementation boolean isValidLogin = validateData.isValidLogin(loginName); boolean isValidPassword = validateData.isValidPassword(password); if(!isValidLogin || !isValidPassword) { // not valid ... do something } // valid ... do something } } // michael's interface public interface ValidateData { public boolean isValidLogin(String login); public boolean isValidPassword(String login); } // Angela's pretend class public class AngelasPretendValidation { public boolean isValidLogin(String login) { return true; } public boolean isValidPassword(String login) { return true; } }