4.定义并实现一个Person类,包含姓名(name)与编号(code)等两个属性,通过构造函数为属性赋值,拥有显示属性值的方法(showInfo)。从Person类派生出一个Student类,拥有数
package monster.zf.Test;
/**
* 4.
* 定义并实现一个Person类,包含姓名(name)与编号(code)
* 等两个属性,通过构造函数为属性赋值,拥有显示属性值的方法(showInfo)。
* 从Person类派生出一个Student类,拥有数学成绩、英语成绩、
* Java成绩等三个属性,拥有输入成绩、计算平均成绩、显示信息
* (姓名、编号及平均值)等方法。编写一段程序,测试这两个类。
* @remakeTODO
* @author Conquer丶ZF
* @date 2019年9月13日上午8:18:08
*/
public class Person {
private int code;
private String name;
/*
* 空参构造
*/
public Person() {
super();
// TODO Auto-generated constructor stub
}
/*
* 含参构造
*/
public Person(int code, String name) {
super();
this.code = code;
this.name = name;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void showInfo(){
System.out.println("姓名为:" + getName());
System.out.println("编号为:" + getCode());
}
}
package monster.zf.Test;
import java.util.Scanner;
/**
* Student类继承Person类
* Student类,拥有数学成绩、英语成绩、
* Java成绩等三个属性,拥有输入成绩、计算平均成绩、显示信息
* (姓名、编号及平均值)等方法。
* @remakeTODO
* @author Conquer丶ZF
* @date 2019年9月13日上午8:25:10
*/
public class Student extends Person {
private double mathscore;
private double englishscore;
private double javascore;
public double getMathscore() {
return mathscore;
}
public void setMathscore(double mathscore) {
this.mathscore = mathscore;
}
public double getEnglishscore() {
return englishscore;
}
public void setEnglishscore(double englishscore) {
this.englishscore = englishscore;
}
public double getJavascore() {
return javascore;
}
public void setJavascore(double javascore) {
this.javascore = javascore;
}
/*
* 用于输入成绩的方法
*/
public void inputScore(){
Scanner input =new Scanner(System.in);
System.out.println("请分别输入数学、英语、java成绩:");
double mathscore = input.nextDouble();
double englishscore = input.nextDouble();
double javascore = input.nextDouble();
setMathscore(mathscore);
setEnglishscore(englishscore);
setJavascore(javascore);
input.close();
}
/*
* 计算平均值的方法
*/
public double avg(){
return (getMathscore()+getEnglishscore()+getJavascore())/3;
}
/*
* 显示信息的方法
*/
public void show(){
Person p = new Person(1, "啊邓");
p.showInfo();
System.out.println(p.getName()+"数学成绩为:" + getMathscore());
System.out.println(p.getName()+"英语成绩为:" + getMathscore());
System.out.println(p.getName()+"java成绩为:" + getMathscore());
double avg = avg();
System.out.print(p.getName()+"平均成绩为:" + avg);
}}
package monster.zf.Test;
/**
* Student测试类
* @remakeTODO
* @author Conquer丶ZF
* @date 2019年9月13日上午8:48:59
*/
public class StudentTest { public static void main(String[] args) {
Student stu = new Student();
stu.inputScore();
stu.show();
}}
【4.定义并实现一个Person类,包含姓名(name)与编号(code)等两个属性,通过构造函数为属性赋值,拥有显示属性值的方法(showInfo)。从Person类派生出一个Student类,拥有数】
文章图片
推荐阅读
- JS中的各种宽高度定义及其应用
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 孩子不是实现父母欲望的工具——林哈夫
- SpringBoot调用公共模块的自定义注解失效的解决
- opencv|opencv C++模板匹配的简单实现
- Node.js中readline模块实现终端输入
- python自定义封装带颜色的logging模块
- java中如何实现重建二叉树