20180307 java面向对象-构造器和setter方法选用
创建对象并给对象设置初始值有两种方式:
方式一:先通过无参数构造器创建出一个对象,再通过对象调用相应的set方法
eg:
User u1 = new User();
u1.setName("Lucy");
u1.setAge(18);
方式二:直接调用带参数的构造器,创建出来的对象就有了初始值。
eg:
User u1 = new User("Lucy",18);
通过构造器和通过setter方法都可以完成相同的功能。
给对象注入数据的两种方式:
1) setter注入 ,又叫做 属性注入。
2) 构造注入。
如何选择这两种注入方式呢?
方法:
1、如果存在带参数的构造器,则用方式二比较简洁(构造注入);
2、如果在构建对象的时候需要初始化多个数据(需要构造的参数比较多), 若使用方式二,那么构造器得提供多个参数,参数过多,不直观,则用方式一比较好。
3、有时候需要根据数据来构建对象,此时优先选用构造器方式(比如 圆 对象,如何画圆,圆对象必须根据半径来确定对象:就应该在构建 圆 对象的时候,就要确定对象)。
4、其他时候任选。