Last active
August 29, 2015 14:16
-
-
Save JensRantil/acbb3d8fd8b4587f9ea3 to your computer and use it in GitHub Desktop.
Log example. Teaching my little brother some programming ;-)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public abstract class AbstractLogger { | |
public abstract void log(String message); | |
} | |
public interface Logger { | |
void log(String message); | |
} | |
public interface UserLogger { | |
void log(User user, String message); | |
} | |
public class FileLogger extends AbstractLogger { | |
private File file; | |
public Logger(File file) { | |
this.file = file; | |
} | |
public void log(String message) { | |
file.write(message); | |
} | |
} | |
public class PrintLogger implements Logger, UserLogger { | |
public void log(String message) { | |
System.out.println(message); | |
} | |
public void log(User user, String message) { | |
// ... | |
} | |
public void somethingRararara() { | |
// ... | |
} | |
} | |
public class MyProgram { | |
public static void main(String[] args) { | |
Logger logger = new PrintLogger(); | |
doSomething(logger); | |
} | |
private static doSomething(Logger logger) { | |
logger.log("Hello, you man!"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Ser bra ut