Java中的构造方法(构造器)
####定义 一个在建立对象时自动被调用的特殊方法ide
做用
为对象进行初始化(成员变量)工做,即初始化类对象的属性,而构造对象是经过new关键字函数
特征
构造器是一种特殊的方法测试
- 构造方法的名称必须跟类名保持一致
- 构造方法虽然有返回值(返回一个已经初始化好的对象),可是不能定义返回类型,返回值的类型确定是本类类型,不能用关键字void,不能在构造器里调用return
- 构造方法在建立类对象的时候经过关键字new被调用
- 当咱们没有写构造方法的时候,系统会默认给咱们添加一个无参构造方法。可是只要咱们给出了一个构造方法,系统就不会给出默认的无参构造方法,因此在写类的时候,通常建议本身手动加上无参构造方法。
- 和普通方法同样,构造方法也能够重载
咱们来看看测试代码this
public class Constructor { // 给Constructor类定义了一个成员变量name private String name; // 无参构造方法,方法名必须跟类名一致,即首字母须要大写 public Constructor() { System.out.println("调用无参数的构造方法。。"); } // 带一个参数的构造方法 public Constructor(String name) { // 经过this()调用无参构造方法 this(); this.name = name; // 构造方法里能够调用普通方法 commonMethod(); } public void commonMethod() { System.out.println("调用普通方法"); } // 写个主函数测试一下 public static void main(String[] args) { // 经过无参构造建立一个Constructor对象 Constructor cons1 = new Constructor(); cons1.name = "我是经过无参构造器建立的对象"; System.out.println(cons1); System.out.println("=====================我是分隔线====================="); // 经过有参构造方法建立另外一个对象 Constructor cons2 = new Constructor("我是经过有参构造方法建立的对象"); System.out.println(cons2); } @Override public String toString() { return this.getClass().getSimpleName() + "[个人名字是:" + name + "]"; } }
咱们来看看输出结果
spa