java接口能实现多态吗_Java中的多态性和接口(可以使用多态来实现接口……为什么?)...

当然,

下面是“Observer”模式的具体示例,使用类和接口在记录器系统中完成多态行为:

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!");

}

希望这有助于您理解接口和多态性.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值