黑马程序员技术交流社区

标题: 扫描器Scanner是IO读取流类的装饰类吗? [打印本页]

作者: Coup_D`etat    时间: 2014-7-3 08:24
标题: 扫描器Scanner是IO读取流类的装饰类吗?
扫描器ScannerIO读取流类的装饰类吗?
装饰类通常会通过构造函数接受被装饰的对象,并基于被装饰的对象的功能,提供更强的功能。
Scanner(File source)
         
构造一个新的 Scanner,它生成的值是从指定文件扫描的。
Scanner(File source, String charsetName)
         
构造一个新的 Scanner,它生成的值是从指定文件扫描的。
Scanner(InputStream source)
         
构造一个新的 Scanner,它生成的值是从指定的输入流扫描的。
Scanner(InputStream source, String charsetName)
         
构造一个新的 Scanner,它生成的值是从指定的输入流扫描的。
Scanner(Readable source)
         
构造一个新的 Scanner,它生成的值是从指定源扫描的。
Scanner(ReadableByteChannel source)
         
构造一个新的 Scanner,它生成的值是从指定信道扫描的。
Scanner(ReadableByteChannel source, String charsetName)
         
构造一个新的 Scanner,它生成的值是从指定信道扫描的。
Scanner(String source)
         
构造一个新的 Scanner,它生成的值是从指定字符串扫描的。



作者: yuZhe_toString    时间: 2014-7-3 09:56
本帖最后由 yuZhe_toString 于 2014-7-3 10:09 编辑

貌似不是吧,首先装饰者和被装饰者要继承或实现相同的抽象类或接口。其次装饰者的构造方法中必须要接收这个抽象类或接口。这样才能完成对传入对象的层层包装。
作者: Coup_D`etat    时间: 2014-7-3 10:08
yuZhe_toString 发表于 2014-7-3 09:56
貌似不是吧,首先装饰者和被装饰者要继承或实现相同的抽象类或接口。其次他们的构造方法中必须要接收这个抽 ...

它们确实实现的接口不一样,
作者: yuZhe_toString    时间: 2014-7-3 10:16
Coup_D`etat 发表于 2014-7-3 10:08
它们确实实现的接口不一样,

那就不是呗,装饰者模式其实是从代理模式演变过来的。
作者: Coup_D`etat    时间: 2014-7-3 10:33
yuZhe_toString 发表于 2014-7-3 10:16
那就不是呗,装饰者模式其实是从代理模式演变过来的。

求解释 代理模式
作者: yuZhe_toString    时间: 2014-7-3 11:11
本帖最后由 yuZhe_toString 于 2014-7-3 11:17 编辑
Coup_D`etat 发表于 2014-7-3 10:33
求解释 代理模式

代理中有代理者和被代理者,就相当于经纪人与明星的关系!从而使被代理者更加专注于自己的业务逻辑,而琐碎的业务逻辑由他的代理者完成。

举个例子:游戏者接口IGamePlayer | 游戏者GamePlayer | 游戏代练GamePlayerPoxy

这个例子是静态代理,比较简单,模式并不固定,静态代理中也分很多其他的情况,比如普通代理,强制代理等

最后说一句,不用谢我,我的名字叫雷锋,哈哈。

1.jpg (48.24 KB, 下载次数: 113)

游戏者接口

游戏者接口

2.jpg (89.03 KB, 下载次数: 106)

真实游戏者

真实游戏者

3.jpg (135.91 KB, 下载次数: 125)

游戏代练

游戏代练

4.jpg (121.67 KB, 下载次数: 111)

场景类

场景类





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2