首页 > 其他 > 详细

静态工厂方法的运用

时间:2019-06-07 18:05:22      阅读:114      评论:0      收藏:0      [点我收藏+]

使用场景:

1.静态方法虽同样是为了实例化对象,但是在语法上不需要与类名保持一致,则在命名上更加灵活 更容易表述实例化的目的

2.可以将构造方法private,只通过静态工厂方法做实例化,即不暴露构造器给客户端,而在静态方法中可以做更多的事情(比如单例,根据参数值进行不同的实例化)

3.可以将子类的实例作为返回结果,在客户端无意识的情况下使用子类,同时将子类保护起来客户端无法直接实例化子类,且后续的升级可以在方法内实现,客户端不会感知到。

4.服务提供者框架

例子:

1.java的Collections工具类是就是通过上面3的方法来实例化一些不能直接实例化的集合类型,并且因为命名灵活,容易使用

2.jdbc的模式就是上述的4.在DriverManager.getConnection的方法中,返回的是未指定的实例,具体的类型要先由Connection的数据库提供商去实现然后注册到系统中:

加载驱动程序:

1 Class.forName(driverClass);
2 //加载MySql驱动
3 Class.forName("com.mysql.jdbc.Driver");
4 //加载Oracle驱动
5 Class.forName("oracle.jdbc.driver.OracleDriver");

获得数据库连接:

 1 DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/fireway", "root", "root"); 

创建Statement/PreparedStatement对象:

1 conn.createStatement();
2 conn.prepareStatement(sql);

 

静态工厂方法的运用

原文:https://www.cnblogs.com/lccsblog/p/10988467.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!