「java包装模式」java包装类型合理场景
今天给各位分享java包装模式的知识,其中也会对java包装类型合理场景进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java的i/o类中有哪些用到了装饰者模式
- 2、Java 问题... Stream IO
- 3、java一共有多少种模式,分别是啥啊?谢谢大家帮忙
- 4、JAVA 包装类valueof是干什么的
- 5、什么是java装饰设计模式
- 6、如何运用Java Service Wrapper将java程序包装成服务?提供最简单的java程序源代码
java的i/o类中有哪些用到了装饰者模式
装饰者模式用来扩展对象的功能,给对象添加不同的功能。
在io流中,比如
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(new File("d:/text.txt"))));
这种对File类的包装,由内层到外层扩展输入流的功能,就是一个典型的装饰者模式。inputstream是被装饰对象,然后Fileinputstream、InputStream、BufferedReader都是它的装饰器,用来扩展它的功能!
Java 问题... Stream IO
你好,我说下我的看法吧。仅供参考。
第一种写法我可以理解,先将文件流存入到缓冲流中,在交给打印流。利用了java的包装模式,提高了程序的效率。就是避免了内存多次从硬盘上读取文件内容。
第二种写法不符合面向对象逻辑。把文件流放到打印流中,然后在放到缓冲流中,那么下一步,将这个B对象交给谁?
java一共有多少种模式,分别是啥啊?谢谢大家帮忙
转载//////////////
Java中的23种设计模式:
Factory(工厂模式), Builder(建造模式), Factory Method(工厂方法模式),
Prototype(原始模型模式),Singleton(单例模式), Facade(门面模式),
Adapter(适配器模式), Bridge(桥梁模式), Composite(合成模式),
Decorator(装饰模式), Flyweight(享元模式), Proxy(代理模式),
Command(命令模式), Interpreter(解释器模式), Visitor(访问者模式),
Iterator(迭代子模式), Mediator(调停者模式), Memento(备忘录模式),
Observer(观察者模式), State(状态模式), Strategy(策略模式),
Template Method(模板方法模式), Chain Of Responsibleity(责任链模式)
工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例,通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作.首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法.然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例.当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例.
JAVA 包装类valueof是干什么的
在你上面全篇中没有看到你使用valueOf啊。
其实valueOf有点类似于工厂模式。valueOf是个静态方法。 可以把对象转换为所需要的类型。
例如 Integer.valueOf("1005") 其实等价于 new Integer("1005")。valueOf可以转换字符,double,short,等等类型。同时 Double Long等对象也有相应的valueOf方法。
它最大的优势是不需要显式的建立对象,此外,java系统本身可以通过一定的优化提高valueOf的速度(例如预先构建 -128到127 的所有Integer对象。)
什么是java装饰设计模式
在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。
举例:
public class Test {
// 将内容写到另一个文件
public void write() {
String string = "测试包装模式";
try {
FileWriter fw = new FileWriter("D:/copyfile.txt");
// 用到包装模式,扩展FileWriter的功能
BufferedWriter bW = new BufferedWriter(fw);
bW.write(string);
bW.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Test test = new Test();
test.write();
}
}
执行结果:
如何运用Java Service Wrapper将java程序包装成服务?提供最简单的java程序源代码
1、使用工具--java service wrapper
2、新建一个文件夹,在文件夹目录下再分别创建lib,bin,conf,logs,classes文件夹
3、将下载的wrapper的文件夹中的wrapper.jar,wrappertest.jar,wrapper.dll复制到新建的lib文件夹下,
将InstallApp-NT.bat,PauseApp-NT.bat,ResumeApp-NT.bat,StartApp-NT.bat,StopAppNT.bat,UninstallApp- NT.bat以及wrapper.exe复制到bin目录下;
将wrapper.conf复制到conf目录下;
将wrapper.log复制到logs目录下;
将要安装成服务的java程序打成jar包(这里我的是TestServer.jar),连同其他需要的jar包一并放到 classes 目录下。
4、配置conf目录下wrapper.conf文件:
这里仅仅列出需要修改的地方
4.1 wrapper.java.command=java
指明jre,如果本机已配置了jre,那么此项不需更改;否则的话,需要将jre复制到wrapper路径下
(和bin在 同一级)
同时修改wrapper.java.command=../jre/bin/java.exe
4.2将程序运行需要的jar包都列出来wrapper.jar是必需的
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../classes/TestServer.jar
wrapper.java.classpath.2=../classes/classes12.jar
4.3指定程序的主类
wrapper.app.parameter.1=test.TestServer
4.4控制台运行时的名称
wrapper.console.title=TestServer
4.5指定服务的名称
wrapper.ntservice.name=TestServer
4.6windows服务的显示名称
wrapper.ntservice.displayname=TestServer
4.7服务描述
wrapper.ntservice.description=TestServer
4.8启动模式,默认是自启动AUTO_START or DEMAND_START
wrapper.ntservice.starttype=AUTO_START
5、运行InstallApp-NT.bat安装服务,运行StartApp-NT.bat启动服务
出现异常错误可以查看logs目录下的log文件
6注意事项:
6.1. 不要改变文件的相对路径
6.2. 安装好服务后,不要移动文件和文件夹
6.3. 也许您该定期清理logs/wrapper.log日志文件,防止日志文件过大
6.4. 备份好数据库和数据文件,定期查看
可以参考
java包装模式的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java包装类型合理场景、java包装模式的信息别忘了在本站进行查找喔。
发布于:2022-11-29,除非注明,否则均为
原创文章,转载请注明出处。