发表于: 2025-03-16 20:24:51

0 20


今天编写代码时师兄说的代码名词有些听不懂,就去查了一下,有参构造和无参构造的区别:

对他们的定义为:

在编写一个类时没有添加无参构造方法,那么编译器会自动添加无参构造方法;(如果自己手动添加构造函数,无论有参数或是没参数,默认构造函数都将无效)

编写时添加有参构造方法而未添加无参构造方法,那么编译器只认有参构造方法而不会默认添加无参构造方法。

如果需要使用无参构造方法,一定要在类里面添加。

有参构造的例子:

package com.hn.yuan.common;

/**

 * 有参构造方法

 */

public class Student {

    private String name;

    private String age;

    public Student(String name, String age) {

        this.name = name;

        this.age = age;

    }

    public void setName(String name) {

        this.name = name;

    }

    public void setAge(String age) {

        this.age = age;

    }

    public String getName() {

        return name;

    }

    public String getAge() {

        return age;

    }

    public void start(){

        System.out.println("我叫"+name+"今年"+age+"岁了");

    }

}

定义一个类:

package com.hn.yuan.common;

public class Test {

    public static void main(String[] args) {

        //使用有参数的构造方法实例化对象

        Student st=new Student("张三","18");

        st.start();

    }

}

正常输出:我叫张三,今年18岁。


无参构造:

在编写一个类时没有添加无参构造方法,那么编译器会自动添加无参构造方法;(如果自己手动添加构造函数,无论有参数或是没参数,默认构造函数都将无效)

编写时添加有参构造方法而未添加无参构造方法,那么编译器只认有参构造方法而不会默认添加无参构造方法。

如果需要使用无参构造方法,一定要在类里面添加。

package com.hn.yuan.common;

/**

 * 无参构造方法

 */

public class Student {

    private String name;

    private String age;

    //含有 无参构造方法

    public Student() {

        System.out.println("调用了无参构造方法");

    }

    public void setName(String name) {

        this.name = name;

    }

    public void setAge(String age) {

        this.age = age;

    }

    public String getName() {

        return name;

    }

    public String getAge() {

        return age;

    }

    public void start(){

        System.out.println("我叫"+name+"今年"+age+"岁了");

    }

}

创建无参构造编辑器会报错

运行代码后不会显示输出。


遇到的问题:在创建spring时项目创建有点问题,今天查文章查的头晕,明天再继续学习spring吧!


返回列表 返回列表
评论

    分享到