小编典典
当然,
下面是“观察者”模式的具体示例,该模式在记录器系统中使用类和接口来实现多态行为:
interface ILogger{
public void handleEvent (String event);
}
class FileLogger implements ILogger{
public void handleEvent (String event){
//write to file
}
}
class ConsoleLogger implements ILogger{
public void handleEvent (String event){
System.out.println( event );
}
}
class Log {
public void registerLogger (ILogger logger){
listeners.add(logger);
}
public void log (String event){
foreach (ILogger logger in listeners){
logger.handleEvent(event); //pass the log string to both ConsoleLogger and FileLogger!
}
}
private ArrayList listeners;
}
然后,您可以按以下方式使用它:
public static void main(String [] args){
Log myLog();
FileLogger myFile();
ConsoleLogger myConsole();
myLog.registerLogger( myFile );
myLog.registerLogger( myConsole );
myLog.log("Hello World!!");
myLog.log("Second log event!");
}
希望这有助于您理解接口和多态性。
2020-09-24
最后
以上就是单纯酸奶最近收集整理的关于java接口能实现多态吗_Java中的多态和接口(多态可以用于实现接口吗?为什么?)...的全部内容,更多相关java接口能实现多态吗_Java中内容请搜索靠谱客的其他文章。
发表评论 取消回复