当我们谈论一个东西的时候,总是从一句:这是什么?开始思考。
那么围绕我们的主题提出疑问,构造器、JavaBean、Builder构建者模式分别是什么?
1.明确本质以及他们分别能够解决什么?
首先,三者的本质都是对象,他们的作用都是:创建对象以及维护对象的内部属性。
构造器
在入门面向对象编程之后,我们用类(class)去表示事物的类别,通过new关键字,使用构造器实例化出对象。
示例:创建一个Person类,使用构造器 new 出一个对象
public class Person{
String name; //姓名 必填参数
int age; //年龄 必填参数
String englishName; //英文名 可选参数
Person(String name,int age,String englishName){
this.name = name;
this.age = age;
this.englishName = englishName;
}
}
Person p = new Person("li hua",18,"leo");
我们通过构造器创建了一个对象,并在构造器中赋值了对象的属性,但这样创建对象是有一定局限性的。
姓名年龄为必填参数时,当不确定对象的英文名时,使用构造器创建则需要这么写:
Person p = new Person("li hua",18,""); //必须要对英文名进行赋值
这样就会有代码不易写,不易读的弊端,于是聪明的程序员采用在类中重载构造器(overload constructor),在重载构造器代码中添加默认值去调用构造器。
重载构造器
public class Person{
String name; //姓名 必填参数
int age; //年龄 必填参数
String englishName; //英文名 可选参数
Person(String name,int age){
this