java用静态工厂代替构造函数使用方法和优缺点

 更新时间:2014年02月20日 15:56:13   作者:  
这篇文章主要介绍了java用静态工厂代替构造函数使用方法和优缺点,需要的朋友可以参考下

1. 形式

复制代码 代码如下:

public static Boolean valueOf(boolean b) {
    return b ? Boolean.TRUE : Boolean.FALSE;
}

2. 优点:

可以有名称
不一定要创建新对象,可以返回已有的对象
可以返回子类类型的对象(例:java.util.Collections)
让参数化代码变短(例:new HashMap<String,List<String>>() 改为 HashMap.newInstance() )

3. 缺点:不能子类化,不被IDE工具识别。

4. 常用名称:valueOf/of ; getInstance(Singleton); newInstance ; getType(不同的类时用); newType

相关文章

  • Java for循环的妙用之鸡兔同笼问题

    Java for循环的妙用之鸡兔同笼问题

    这篇文章主要给大家介绍了关于Java for循环的妙用之鸡兔同笼问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • 基于SpringBoot2.0默认使用Redis连接池的配置操作

    基于SpringBoot2.0默认使用Redis连接池的配置操作

    这篇文章主要介绍了基于SpringBoot2.0默认使用Redis连接池的配置操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 拦截器获取request的值之后,Controller拿不到值的解决

    拦截器获取request的值之后,Controller拿不到值的解决

    这篇文章主要介绍了拦截器获取request的值之后,Controller拿不到值的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • JAVA的LIST接口的REMOVE重载方法调用原理解析

    JAVA的LIST接口的REMOVE重载方法调用原理解析

    这篇文章主要介绍了JAVA的LIST接口的REMOVE重载方法调用原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • java实现电话本系统

    java实现电话本系统

    这篇文章主要为大家详细介绍了java实现电话本系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • SpringBoot mybatis-plus使用json字段实战指南

    SpringBoot mybatis-plus使用json字段实战指南

    在现代应用开发中经常会使用JSON格式存储和传输数据,为了便捷地处理数据库中的JSON字段,MyBatis-Plus提供了强大的JSON处理器,这篇文章主要给大家介绍了关于SpringBoot mybatis-plus使用json字段的相关资料,需要的朋友可以参考下
    2024-01-01
  • SpringBoot中@PathVariable、@RequestParam和@RequestBody的区别和使用详解

    SpringBoot中@PathVariable、@RequestParam和@RequestBody的区别和使用详解

    这篇文章主要介绍了SpringBoot中@PathVariable、@RequestParam和@RequestBody的区别和使用详解,@PathVariable 映射 URL 绑定的占位符,通过@RequestMapping注解中的{}占位符来标识URL中的变量部分,需要的朋友可以参考下
    2024-01-01
  • Java杂谈之类和对象 封装 构造方法以及代码块详解

    Java杂谈之类和对象 封装 构造方法以及代码块详解

    在现实世界中,真实存在的东西,比如吉普车,卡丁车,货车。我们在认识它的时候就会在脑海中将它抽象为一种类别叫做车。 好了,那再计算机世界中,它同样的也会这样做
    2021-09-09
  • maven项目无法读取到resource文件夹的问题

    maven项目无法读取到resource文件夹的问题

    这篇文章主要介绍了maven项目无法读取到resource文件夹的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • java实现在复制文件时使用进度条(java实现进度条)

    java实现在复制文件时使用进度条(java实现进度条)

    在对大文件操作时,可能会需要些时间,此时为用户提供进度条提示是非常常见的一项功能,这样用户就可以了解操作文件需要的时间信息。本实例为大家介绍了在复制大的文件时使用的进度条提示,需要注意的是,只有在读取文件超过2秒时,才会显示进度条
    2014-03-03

最新评论