Java构造方法总结

public class UserInfo {
    int age;
    String mobile;
    String address;
    String name;
    UserInfo(){
    
    }
    UserInfo(int a,String m,String add,String n){
    age =a;
    mobile =m;
    address =add;
    name = n;//成员变量赋值
    }
}

如上的形如   与类名相同的方法名(参数列表){方法体}   为构造方法

以下代码是均包含在此类中的例子,互不影响

构造方法的调用方式为  new 方法名()

其特点为

1、方法名前只能加 public 或 private 或 protected ,即无返回值类型如void和修饰词如static

2、类中默认有无参构造方法,当定义有参构造方法时,默认的无参构造方法会被隐藏

    public static void main(String[] args) {
        UserInfo userinfo = new UserInfo();
        new Userinfo();
    }

故如果没有像上一段代码中自己定义一个无参构造方法,那么此代码会报错,原因是已经定义了有参构造方法,默认的无参构造方法已经隐藏

3、一个类中可以跟据需要定义多个构造方法,这是”重载“的表现

 

构造方法的作用是简化代码

public static void main(String[] args) {
        UserInfo wang = new UserInfo();
        wang.age =12;
        wang.name ="王勇";
        wang.mobile ="12333334567";
        wang.address ="河南省郑州市高新区";
        UserInfo li = new UserInfo();
        li.age =22;
        li.name ="李三";
        li.mobile ="12233334567";
        li.address ="河南省郑州市高新区";
}

上述代码可以用有参构造方法来简化

public static void main(String[] args) {
    UserInfo wang = new UserInfo(12,"12333334567","河南省郑州市高新区","王勇");
    UserInfo li = new UserInfo(22,"12233334567","河南省郑州市高新区","李三");
}

​

除此之外,可以在构造方法中调用其他的构造方法

调用方式为在构造方法第一段有效代码位置 this(调用方法的实参列表) 

将最初代码改变,展示调用并且达到相同效果

public class UserInfo {
    int age;
    String mobile;
    String address;
    String name;
    UserInfo(){
    
    }
    UserInfo(int a,String n){
    age =a;
    name =n;
    }
    UserInfo(int a,String m,String add,String n){
    this(a,n);//调用构造方法
    mobile =m;
    address =add;
    
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值