- 博客(8)
- 资源 (17)
- 收藏
- 关注
转载 第5条:避免创建不必要的对象
一般来说,最好能重用对象而不是在每次需要的时候就创建一个相同功能的新对象。重用方式既快速,又流行。如果对象是不可变的,它就始终可以被重用。 举个栗子 1: 一个极端的语句:String s = new String("GoodMan"); 该语句每次执行都会创建一个新的String 实例,很明显这样的功能一样的实例是完全没有必要的。 改进:String s = "GoodMan";
2017-08-03 17:32:41 275
原创 第4条:通过私有构造器强化不可实例化的能力
有的时候,你可能需要编写只需要包含静态方法和静态域对的类。比如java.util.Math 或者 java.util.Arrays 等工具类,它们不希望被实例化。可能你也需要编写这样的工具类,而不愿被实例化,被继承。我们可以编写一个类,让它包含一个私有的构造器,这个类就不能被实例化和被继承了。 public class UtilityClass { // Suppress default c
2017-08-03 15:23:08 318
转载 第3条:用私有构造器或者枚举类型强化Singleton属性
转载于viclee Java中单例(Singleton)模式是一种广泛使用的设计模式。单例模式的主要作用是保证在Java程序中,某个类只有一个实例存在。一些管理器和控制器常被设计成单例模式。 单例模式有很多好处,它能够避免实例对象的重复创建,不仅可以减少每次创建对象的时间开销,还可以节约内存空间;能够避免由于操作多个实例导致的逻辑错误。如果一个对象有可能贯穿整个应用程序,而且起到了全局统一管
2017-08-03 12:42:06 329
原创 第2条:遇到多个构造器参数时要考虑用构建器
静态工厂和构造器有个共同的的局限性:它们都不能很好的扩展大量可选的参数。举个栗子:一个饮料类,不同的饮料,包含相同的参数(水,卡路里,脂肪量,糖量……),也有不同的参数,有的含有矿物质,胡萝卜素 , 钠 , XX酸……对于这样的类,我们该如何设计构造器?传统构造器的困境对于传统的构造器,有多少个值域就要去写多少个构造器。比如饮料公共参数是8个,那么至少要写8个构造器出来,可选参数从1个到8个。pub
2017-07-26 16:08:31 320
转载 第1条:考虑用静态工厂方法代替构造器
转载http://liwenshui322.iteye.com/blog/1267202Java 服务提供者框架介服务提供者框架是指:多个服务提供者实现一个服务,系统为客户端提供多个实现,并把他们从多个实现中解耦出来。服务提供者的改变对它们的客户端是透明的,这样提供了更好的可扩展性。例如,JDBC,JMS等就是用了服务提供者框架。 他们之间的关系如下图:1.服务具体实现类和服务提供者实现类是服务提
2017-07-20 15:03:07 275
原创 integer.toString(int i, int radix) 按进制转字符串
integer.toString(int i, int radix)来自java.lang,int 类型转字符串类型。public class IntegerTest { // public static String toStrNum(int i, int radix) { char[] digits = { '0' , '1' , '2' , '3'
2017-06-22 18:06:19 968
原创 先搭个架子,留着慢慢补充
读源码(JDK 6)阅读java.lang 和 java.util 包,了解熟悉java基础用法背后实现原理。读源码JDK 6 javaLang 接口 - Interfaces 类 - Classes 枚举 - Enums 错误 - Errors 注释类型 - Annotation Types javaUtil 接口 - Interfaces 类 - Classes 枚举 - Enums 错误 -
2017-06-22 16:29:41 308
原创 java(基础知识储备)--接口
接口(interface)是什么?“接口(interface)是用来描述类具有什么功能,而并不给出每个功能的具体实现。一个类可以实现(implement)一个或多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。”—————-《java核心卷1》接口(interface)的一般格式[修饰符] interface 接口名 [extends 父接口名列表]{ [public] [static]
2017-03-05 20:35:55 382
devoxx-Nov2017-shenandoah.pdf
2019-12-25
rabbitmq-server-3.8.0-1.el7.noarch.rpm
2019-12-24
rabbitmq-server-3.7.20-1.el7.noarch.rpm
2019-12-24
Tomcat-8.0.11-windows-x64 免安装版
2017-12-08
spring4+mybatis3+springmvc4实战
2017-12-08
Java面试宝典2017
2017-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人