构造方法:类的成员之一。 1.作用:只有一个,用于构造当前类的对象 2.写法:修饰符 与类名一致的方法名(参数列表) {创建当前类对象;返回的对象} 3.特点: 1.每一个类都有构造方法,若自己在类中没有定义,则系统会默认提供一个无参数的构造方法,若在类中定义了构造方法,则这个默认的无参数构造方法会被覆盖。 2.构造方法存在方法重载 4.使用场景 在面向对象-属性中,我们可以发现给属性赋值时,是发生在创建对象后(对象.属性) 在构造方法中,我们可以通过有参数的构造方法,在对象创建时给属性赋值,即当我们需要在创建对象时,给属性赋值时,可以使用有参数的构造方法。 5.this的使用 this是一个指代关键字,指代的是当前调用属性、方法时的那个对象 this在调用构造方法和一般方法时,构造方法要早于一般方法 不能在一般方法里面调用构造方法,但可以在一个构造方法内调用另一个构造方法(格式:this()),但是只能放在程序的第一行(必须)。 6.程序块 类的成员之一。 是一个无修饰符,无参数,无返回值,无方法名的函数 执行:在调用构造方法之前,系统会自动的调用一次程序块 程序块没有重载,但可以在程序中多次定义 7.使用(见代码)
public class Person {public String name;// 普通方法public void study(){System.out.println("要学习");}// 构造方法public Person() {}// 构造方法的方法重载public Person(String name){this.name = name;}// 块的写法{System.out.println("我是程序块");}}
public class test {public static void main(String[] args) {// 通过无参数的构造方法给对象赋值Person p1 = new Person();p1.name = "我是通过无参数的构造方法创建的人名:萌新";System.out.println(p1.name);// 通过有参数的构造方法给对象赋值Person p2 = new Person("萌新");System.out.println("我是通过有参数的构造方法创建的人名:"+ p2.name);}}
我是程序块我是通过无参数的构造方法创建的人名:萌新我是程序块我是通过有参数的构造方法创建的人名:萌新
