对构造方法的理解及使用

构造方法

  • 创建对象中new 后面的首字母大写单词加括号是一种特殊的方法——构造方法
  • 构造方法不写void
  • 括号中什么也没有为无参构造方法(无返回值类型),每个类都有个默认的无参构造方法可以直接调用。
  • 但是如果自定义了带参构造方方法,系统就不在默认提供无参构造方法了。如果要使用,必须显示声明。
  • 构造方法和类名规则相同,遵循帕斯卡命名规则,每个单词首字母大写。
  • this调用构造方法必须在同一行。

//测试修改学生信息类

public class TestModifyStu {
    public static void main(String[] args) {
        ModifyScore m=new ModifyScore();
        //定义了一个学生对象数组
        /*Student s1=new Student();
        s1.name="as";
        s1.score=23;*/
        Student s1=new Student("as",23);
        /*Student s2=new Student();
        s2.name="ad";
        s2.score=25;*/
        Student s2=new Student("ad",25);
        /*Student s3=new Student();
        s3.name="fs";
        s3.score=13;*/
        Student s3=new Student("fs",13);
        Student[] stus=new Student[3];
        stus[0]=s1;
        stus[1]=s2;
        stus[2]=s3;
        //显示学生信息、修改学生成绩
        m.showStus(stus);
        m.modifyStuScore(stus);
        m.showStus(stus);

    }
}

//学生类

public class Student {
    //属性: 姓名  年龄   成绩
    String name;
    int age;
    int score;

    //系统默认提供这个无参构造方法
    public Student(){
    }

    //带参构造方法  this:指代当前对象
    public Student(String name,int score){
        this.name = name;
        this.score = score;
    }
    
    public Student(String name,int score,int age){
        /*this.name=name;
        this.score=score;
        this.age=age;*/
        this(name,score);//调用带参构造方法Student(String name,int score),
        this.age=age;
    }
    /*//可以理解为这种写法
    public Student(String n,int s){
        name=n;
        score=s;
    }*/

    //方法:输出个人信息
    public void showInfo(){
        System.out.println(name+"的成绩是:"+score);
    }
    
    public void method1(){
        showInfo();//等同于this.showInfo();
    }
}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值