今天看Core Java的时候,书上说域初始化通常使用以下3种方法:
1. 在构造器(constructor)中设置值
2. 在域的声明(declaration)中赋值
3. 在初始化块(initialization block)中设置值实际的项目中,哪种方法是最常用的呢?或者说大家的公司有没有规定说是一定要用哪一种?
1. 在构造器(constructor)中设置值
2. 在域的声明(declaration)中赋值
3. 在初始化块(initialization block)中设置值实际的项目中,哪种方法是最常用的呢?或者说大家的公司有没有规定说是一定要用哪一种?
解决方案 »
- 如何节约Java内存的一个问题(List)
- new类时,后面有{//do something}?
- 推荐本比较好的java编程思想BOOK
- 用过org.apache.poi.hssf请进,怎么读取excel文件中的日期值,救命!
- 求助:实现菜单open打开txt文本并将文本显示到JTextArea里。还有一点问题。帮运行。
- .net 有Crystal reports可以用,java 有吗?
- JDK1.5版本取消了javac 命令吗???那怎么编译文件啊?
- 怎么捕捉JTabbedPane的切换tab事件?
- 请问大家如何进行ejb的测试?假如开发工具是jbuilder。
- 又一个困惑我的问题,呵呵
- 关于Java里多态的问题,子类里调用被重载的父类的方法
- JBOSS最新版多少 支持 JDK1.6不
如果域是对象类型数据,通常使用这种方法2. 在域的声明(declaration)中赋值
如果域是8种基本类型数据,通常使用这种方法3. 在初始化块(initialization block)中设置值
这种方法很少用,通常使用第一种构造器的方法代替此方法
这个用的多吧?
3. 在初始化块(initialization block)中设置值 这两种方法都常用,方法1经常在个别少数数据需要简单初始化时候(个人叫法,简单初始化就是基本不经过变换强转等的直接初始化)
如果构造时传参较多,建议在构造器尽量用一个init方法封装起来,构造器看起来简洁。
common-io包中, 回车换行的初始化。
2. 在域的声明(declaration)中赋值
这两种怎么用,看自己的习惯和实际情况了。在构造器中设置比较灵活,因为有的时候你可能要根据构造器的参数来进行初始化工作,如果你确定要初始化成什么值,直接进行field的初始化也不错,这种代码也挺常见的。
3. 在初始化块(initialization block)中设置值
初了无聊的考试题,还没见过真正使用的情况。编译器仅仅是把初始化块的内容提取出来放到初始化方法中(<init>方法,也可以认为就是构造方法),构造方法本来的内容跟在他们后面。所以这种极端不常用
声明时初始化
初始化块中初始化
构造器中初始化
使用时初始化你要给它默认值,那就声明或者初始化块中初始化
你要注入就构造器初始化
你要节省空间就使用时初始化你也可以用set方法注入改变它
声明时初始化
初始化块中初始化
构造器中初始化
使用时初始化你要给它默认值,那就声明或者初始化块中初始化
你要注入就构造器初始化
你要节省空间就使用时初始化你也可以用set方法注入改变它