构造方法 [Java]

本文详细介绍了Java中的构造方法,包括构造方法的定义、语法格式和注意事项。构造方法用于初始化类的对象,其名称必须与类名相同,且无返回值。当未定义构造方法时,系统会提供默认构造方法。良好的编程习惯建议每个类至少定义一个构造方法,以方便对象初始化。同时,文章通过实例展示了如何使用构造方法,并提醒程序员在定义参数化构造方法后,需要手动添加无参构造方法以避免编译错误。
摘要由CSDN通过智能技术生成

构造方法

构造方法的定义(什么是构造方法?)

在类体中名字与类名相同的方法就叫构造方法

eg:Person p=new Person(); //声明Person类的引用,指向Person类型的对象

​ p.show(); //使用引用变量p调用show方法

语法格式

class 类名{

​ 类名(形参列表){

构造方法体

}

}

package text;

public class Perple {
    int age;
    String name;
    /*
       这里没有定义构造方法,系统会自动产生默认构造方法
    */
//    Perple(String n,int a){
//       name=n;
//       age=a;
//    }
    public void show(){
        System.out.println("我的名字是:"+name+"我今年"+age+"岁了");
    }

    public static void main(String[] args) {
       // People me=new Perple();
        Perple me=new Perple();
        me.show();
    }
}

注意事项

1.构造方法的名称与类名要完全相同

2.构造方法没有返回值,就算是void类型也不能有

3.当使用new关键字构造对象时会自动调用构造方法进行成员变量的初始化工作(说白了构造方法就是为了初始化成员变量)

默认构造方法

当类体中没有定义任何形式的构造方法时,编译器会自动产生一个无参的空构造方法,就叫默认/缺省的构造方法(如:

Person(){}; 就是一个无参的空构造方法(无参指的是Person()方法没有参数,而空构造指的是{} 构造方法体中没有java语句)).

这里的编译器默认产生构造方法就和引用类型默认值为null一样,你不写编译器就会默认一个值,但你写了编译器就不会管了(也就是当你写了一个有参数的构造方法时,你就必须写一个无参的构造方法,为了防止编译发生错误,因为在你写了一个含参数的构造方法之后,编译器就不会产生默认构造方法,这个时候如果你在后面调用了无参的空构造方法,那么编译器就会出错)

package text;

public class Perple {
    int age;
    String name;
    /*
    这里我们自己创建了构造方法,所以系统不会再自动产生默认的构造方法,这时候我们再调用空构造方法就会出错,因为我们没有建立空构造方法
    */
    Perple(String n,int a){
       name=n;
       age=a;
       }
    public void show(){
        System.out.println("我的名字是:"+name+"我今年"+age+"岁了");
    }

    public static void main(String[] args) {
       // People me=new Perple();
        Perple me=new Perple("张三",25);
        me.show();
    }
}

构造方法中良好的编程习惯经验分享

1.有几个成员变量一般我们所定义的构造方法就有几个参数(我们使用构造方法的目的就是为了初始化成员变量)

2.只要类中有成员变量,且成员变量不全为常量时我们一般定义两个构造方法,一个是全属性做参数的构造方法,另一个是空构造方法(定义空构造方法是为了我们的编译器不报错)0

3.当类中的没有成员变量或者成员变量全部为常量时,我们一般不写构造方法(因为构造方法就是用来初始化成员变量的,而当类体中没有可初始化的成员变量时,也就没有必要建立构造方法了)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值