栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java练习:方法重写——给Student类增加本科生子类和研究生子类,并重写父类中的方法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java练习:方法重写——给Student类增加本科生子类和研究生子类,并重写父类中的方法

方法的重写是指在子类中定义与父类具有相同的方法名、返回类型和参数表的新方法,该方法将覆盖父类原有的方法。
子类可使用super关键字引用当前类的父类同名方法。
例题练习如下:
首先创建一个Student类,包含的属性有姓名name和年龄age;

class Student{  //创建父类Student;
	String name;  //属性name;
	int age;      //属性age;
	void displayInformation() {
		System.out.println("姓名:" + name);
		System.out.println("年龄:" + age);
	}
}

派生出本科生类(Undergraduate),并新增属性为专业specialty,新增与父类同名方法并根据子类对方法适当增加内容;

class Undergraduate extends Student{
	String specialty;    //子类中增加新的属性specialty;
	void displayInformation() {
		super.displayInformation(); //引用Student类中的方法;
		System.out.println("专业:" + specialty);
	}
}

同样派生出研究生类(Postgraduate),新增属性为研究方向studydirection,同样新增与父类同名方法并适当增加内容;

class Postgraduate extends Student{
	String studydirection;  //子类中增加新的属性studydirection;
	void displayInformation() {
		super.displayInformation();//引用父类中的方法;
		System.out.println("研究方向:" + studydirection);
	}
}

需要注意的是两个子类都新增displayInformation()方法并在原有属性基础上各自新增不同的属性,所以两个子类重写后的方法已经完全不同了。
以上两个子类引用父类方法除了以上写法还可以换成另外一种:

class Undergraduate extends Student{
	String specialty;    //子类中增加新的属性specialty;
	void displayInformation() {
		System.out.println("姓名:" + super.name);
	    System.out.println("年龄" + super.age);
		System.out.println("专业:" + specialty);
	}
}

class Postgraduate extends Student{
	String studydirection;
	void displayInformation() {
		System.out.println("姓名:" + super.name);
	    System.out.println("年龄" + super.age);
		System.out.println("研究方向:" + studydirection);
	}
}

最后,是程序的运行。分别将子类实例化,并对各属性赋予具体的值,就可以运行成功了!

public class demo4 {
	public static void main(String[] args) {
		Undergraduate a = new Undergraduate();
		a.name = "张三";
	    a.age = 21;
		a.specialty = "大数据";
		a.displayInformation();
		
		Postgraduate b = new Postgraduate();
		b.name = "李四";
		b.age = 23;
		b.studydirection = "人工智能方向";
		b.displayInformation();
	}

}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/390276.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号