java 子类的构造方法_Java子类的构造方法 学习基础教程

super关键字:java类中使用super来表示父类的引用。

继承当中的构造方法:

子类在调用构造方法时,必须要先调用父类的构造方法。

在子类的构造方法中使用super([参数列表])来调用父类的构造方法,调用父类构造方法的super()要写在子类构造方法中的第一句。

如果在子类的构造方法中没有显示的调用父类的构造方法,那么会自动调用父类的空参构造方法。

如果在子类的构造方法中既没有显示的调用父类的构造方法,父类中也没有空参的构造方法,那会会造成编译出错。

Undergraduate ug = new Undergraduate("张三", 25, "bachelor", "computer");

Graduate g = new Graduate("李四", 27, "master", "computer");

351e0278cc0c1c6d9186214631b8c137.png

Java子类的构造方法 学习基础教程

Object类:

一个java类,如果没有继承其它的类,默认它继承Object类

API: Application Program Interface

程序如下:

//Student类

package com.bluedot.test;

public class Student {

private String name;

private int age;

private String degree;

Student(String name, int age, String degree){

this.name = name;

this.age = age;

this.degree = degree;

}

public Student() {

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public String getDegree() {

return degree;

}

public void setDegree(String degree) {

this.degree = degree;

}

public void infor(){

System.out.println("姓名"+name+"年龄"+age+"学历"+degree);

}

}

//Undergraduate 类

package com.bluedot.test;

public class Undergraduate extends Student {

private String major;

public Undergraduate(String name, int age, String degree,String major) {

super(name, age, degree);

this.major = major;

}

public String getMajor() {

return major;

}

public void setMajor(String major) {

this.major = major;

}

public void infor() {

// TODO Auto-generated method stub

super.infor();

System.out.println("学历"+major);

}

}

//Graduate类

package com.bluedot.test;

public class Graduate extends Student {

private String direction;

public Graduate(String name, int age, String degree,String direction) {

super(name, age, degree);

this.direction = direction;

}

public String getDirection() {

return direction;

}

public void setDirection(String direction) {

this.direction = direction;

}

public void infor() {

super.infor();

System.out.println("研究方向"+getDirection());

}

}

//Test3类

package com.bluedot.test;

public class Test3 {

public static void main(String[] args) {

Undergraduate ud = new Undergraduate("张三",24,"barchor","计算机");

Graduate gr = new Graduate("李四",27,"master","体育");

ud.infor();

gr.infor();

}

}

//不同的类,存在同一包下

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值