java构造方法 的作用是啥? | 您所在的位置:网站首页 › java中无参构造方法的作用 › java构造方法 的作用是啥? |
java构造方法 的作用是啥?
java构造方法的作用是用来创建和初始化对象的一种特殊的方法。它的名字必须和类名相同,没有返回值,不能被static、final、synchronized、abstract和native修饰。 java构造方法可以分为无参构造方法和有参构造方法。无参构造方法是默认的构造方法,如果没有显式地定义任何构造方法,编译器会自动为类生成一个无参构造方法。无参构造方法的作用是给对象的属性赋予默认值,比如String类型的默认值是null,int类型的默认值是0 有参构造方法是带有参数的构造方法,可以在创建对象的时候给对象的属性赋予指定的值。有参构造方法可以重载,也就是说可以根据不同的参数类型和个数定义多个有参构造方法。 java构造方法还可以用来复制对象,也就是说可以通过一个已存在的对象来创建一个新的对象,并把原对象的属性值复制给新对象。这可以通过在构造方法中使用this关键字来实现。 例如: //定义一个Person类 public class Person { //定义两个属性:name和age private String name; private int age; //定义一个有参构造方法,用来给属性赋值 public Person(String name, int age) { this.name = name; this.age = age; } //定义一个复制构造方法,用来通过一个已存在的对象创建一个新的对象,并把原对象的属性值复制给新对象 public Person(Person p) { this.name = p.name; this.age = p.age; } //定义一个方法,用来打印对象的属性值 public void print() { System.out.println("name: " + name + ", age: " + age); } } //在主方法中测试 public class Test { public static void main(String[] args) { //创建一个Person对象p1,使用有参构造方法给属性赋值 Person p1 = new Person("Alice", 20); //打印p1的属性值 p1.print(); //输出:name: Alice, age: 20 //创建一个Person对象p2,使用复制构造方法通过p1创建一个新的对象,并把p1的属性值复制给p2 Person p2 = new Person(p1); //打印p2的属性值 p2.print(); //输出:name: Alice, age: 20 //修改p1的属性值 p1.name = "Bob"; p1.age = 25; //再次打印p1和p2的属性值,可以看到p2的属性值没有随着p1的改变而改变,说明p2是一个独立的对象,不是p1的引用 p1.print(); //输出:name: Bob, age: 25 p2.print(); //输出:name: Alice, age: 20 } }java构造方法是java类的重要组成部分,它可以让我们方便地创建和初始化对象,以及复制对象 |
CopyRight 2018-2019 实验室设备网 版权所有 |