码迷,mamicode.com
首页 > 其他好文 > 详细

构造方法

时间:2019-06-14 23:42:31      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:aaaaa   print   pca   成员   重载   ack   pack   ted   sys   

构造方法

当一个对象被创建时候,构造方法用来初始化该对象,给对象的成员变量赋初始值。

构造方法的定义格式

技术图片技术图片?

注意事项:

  • 构造方法的写法上,方法名与它所在的类名相同。它没有返回值,所以不需要返回值类型,甚至不需要void。
  • 如果你不提供构造方法,系统会给出无参数构造方法。
  • 如果你提供了构造方法,系统将不再提供无参数构造方法。
  • 构造方法是可以重载的,既可以定义参数,也可以不定义参数。
  • 建议手动给出一个全参和一个无参的构造方法

代码举例

定义student类

package demo06;

/*
构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。
格式:
public 类名称(参数类型 参数名称) {
    方法体
}

注意事项:
1. 构造方法的名称必须和所在的类名称完全一样,就连大小写也要一样
2. 构造方法不要写返回值类型,连void都不写
3. 构造方法不能return一个具体的返回值
4. 如果没有编写任何构造方法,那么编译器将会默认赠送一个构造方法,没有参数、方法体什么事情都不做。
public Student() {}
5. 一旦编写了至少一个构造方法,那么编译器将不再赠送。
6. 构造方法也是可以进行重载的。
重载:方法名称相同,参数列表不同。
 */
public class Student {

    // 成员变量
    private String name;
    private int age;

    // 无参数的构造方法
    public Student() {
        System.out.println("无参构造方法执行啦!");
    }

    // 全参数的构造方法
    public Student(String name, int age) {
        System.out.println("全参构造方法执行啦!");
        this.name = name;
        this.age = age;
    }

    // Getter Setter
    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getAge() {
        return age;
    }

}

使用Student类

package demo06;

public class Demo02Student {

    public static void main(String[] args) {
        Student stu1 = new Student(); // 无参构造方法执行啦!

        Student stu2 = new Student("赵丽颖", 20); // 全参构造方法执行啦!
        System.out.println("姓名:" + stu2.getName() + ",年龄:" + stu2.getAge());//姓名:赵丽颖,年龄:20
        // 如果需要改变对象当中的成员变量数据内容,仍然还需要使用setXxx方法
        stu2.setAge(21); // 改变年龄
        System.out.println("姓名:" + stu2.getName() + ",年龄:" + stu2.getAge());//姓名:赵丽颖,年龄:21

    }

}

 

 

构造方法

标签:aaaaa   print   pca   成员   重载   ack   pack   ted   sys   

原文地址:https://www.cnblogs.com/wurengen/p/11025855.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!