以人类 Person 为基类设计学生类 Student 和教师类 Teacher
学习内容:实验二以人类 Person 为基类设计学生类 Student 和教师类 Teacher
示例代码:
package 实验二;
import java.util.Scanner;
class Person{
private String no;
private String name;
public Person(String no,String name) {
this.no=no;
this.name=name;
System.out.println("Person Constructorrun");
}
public void setNo(String no) {
this.no=no;
}
public String getNo() {
return no;
}
public void setName(String name) {
this.name=name;
}
public String getName() {
return name;
}
public void show() {
System.out.println("No="+no+",Name="+name);
}
}
class Student extends Person{
private String no;
private String name;
private String sNo;
private String className;
private double score;
public Student(String no, String name,String sNo,String className,double score) {
super(no,name);
this.no=no;
this.name=name;
this.sNo=sNo;
this.className=className;
this.score=score;
System.out.println("Student Constructor run");
}
public void setSNo(String sNo) {
this.sNo=sNo;
}
public String getSNo() {
return sNo;
}
public void setClassName(String className) {
this.className=className;
}
public String getClassName() {
return className;
}
public void setScore(double score) {
this.score=score;
}
public double getScore() {
return score;
}
public void show() {
System.out.println("No="+no+",Name="+name);
System.out.println("SNo="+ sNo+",ClassName="+ className+",Score="+score);
}
}
public class Teacher extends Person {
private String no;
private String name;
private String tNo;
private String departmentName;
private double wages;
public Teacher(String no,String name,String tNo,String departmentName,double wages) {
super(no, name);
this.no=no;
this.name=name;
this.tNo=tNo;
this.departmentName=departmentName;
this.wages=wages;
System.out.println("Teacher Constructor run");
}
public void setTNo(String tNo){
this.tNo=tNo;
}
public String getTNo() {
return tNo;
}
public void setDepartmentName(String departmentName) {
this.departmentName=departmentName;
}
public String getDepartmentName() {
return departmentName;
}
public void setWages(double wages) {
this.wages=wages;
}
public double getWages() {
return wages;
}
public void show() {
System.out.println("No="+no+",Name="+name);
System.out.println("TNo="+ tNo+",DepartmentName="+ departmentName+",Wages="+wages);
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
String s1="130502190001010332";
String s2="doublebest";
String s3="20181234";
String s4="铁 1801";
double value=60.67;
Student stu1=new Student(s1,s2,s3,s4,value);
stu1.show();
Student stu2=stu1;
Scanner sc1=new Scanner(System.in);
s3=sc1.next();
Scanner sc2=new Scanner(System.in);
s4=sc2.next();
Scanner sc3=new Scanner(System.in);
value=sc3.nextDouble();
stu2.setSNo(s3);
stu2.setClassName(s4);
stu2.show();
Teacher t1=new Teacher(s1,s2,s3,s4,value);
t1.show();
Teacher t2=t1;
t2.setTNo(s3);
t2.setDepartmentName(s3);
t2.show();
}
}
运行截图:

明天任务:以圆类 Circle 为基础设计球类 Sphere
以人类 Person 为基类设计学生类 Student 和教师类 Teacher的更多相关文章
- 实验二——以点类 Point 为基类设计圆类 Circle
学习内容:以点类 Point 为基类设计圆类 Circle 示例代码: package 实验二; import java.util.Scanner; class Point{//父类Point pri ...
- iOS控制器之基类设计
题记 在进入新公司后.经过这一个月的重构项目,终于把项目做到了个人相对满意的程度(还有一种不满意的叫老板的需求,提过多次意见也没用= =!).在这次重构中按照以前的思路设计出了个人觉得比较适用的一个基 ...
- [theWord] 一种英文字典的基类设计
theWord --- 一种英文字典的基类设计 使用场景 想写一个应用,来记录自己背单词时候,对每个单词的记忆状况之类的东西.至于为什么做这个,试过了一些背单词软件,并不觉得好用,自己做一个吧. 那么 ...
- iOS 基于MVC设计模式的基类设计
iOS 基于MVC设计模式的基类设计 https://www.jianshu.com/p/3b580ffdae00
- Java实验项目三——编程实现Person类,学生类的设计及其继承关系
Program: 编程实现Person类,学生类的设计及其继承关系 代码如下: 定义抽象类Person 1 /* 2 * Description:建立抽象类 3 * 4 * Written By:Ca ...
- Java学习---JAVA的类设计
基础知识 JAVA是由C/C++语言发展而来的纯面向对象语言,其基本元素包括:简单数据类型 和 复合数据类型(即类).类是对客观事物的抽象描述,它有面向对象的四个特点,即:封装性.继承性.多态性和通信 ...
- (转)C++类库开发之导出类设计原则
上一篇博客详细陈述了类库开发的各个知识点(http://blog.csdn.net/z702143700/article/details/45989993),本文将进一步陈述,对于类库开发过程中导出类 ...
- 水果项目第1集-想法>需求->功能->数据库设计->类设计
懒,懒人,我是个懒人. 懒人想做点事,总是拖拖拉拉,迟迟没有开始. 很久很久以前,就想做属于自己的产品,但是至今还没有一个属于自己的产品. 两年前,终于想好,要做一个网上卖水果的系统,手机上点点,水果 ...
- YTU 2602: 熟悉题型——类设计( 矩形类定义【C++】)
2602: 熟悉题型--类设计( 矩形类定义[C++]) 时间限制: 1 Sec 内存限制: 128 MB 提交: 183 解决: 119 题目描述 定义一个矩形类,数据成员包括左下角和右上角坐标 ...
随机推荐
- 在微信小程序中绘制图表(part2)
本期大纲 1.确定纵坐标的范围并绘制 2.根据真实数据绘制折线 相关阅读:在微信小程序中绘制图表(part1)在微信小程序中绘制图表(part3) 关注我的 github 项目 查看完整代码. 确定纵 ...
- 来扯点ionic3[3] 页面的生命周期事件,也就是凡间所说的钩子
首先要做一个诚挚的道歉,作为大四狗,因为升学的事情,断更两个月,所以要感谢各位仁慈的读者没有脱粉(好像也就50个粉丝).这一节,我们延续上一节制作的页面,来讨论声明周期钩子的事情. 以我的经验来看,多 ...
- Unknown host mirrors.opencas.cn You may need to adjust the proxy settings in Gradle 报错及解决办法
亲测Unknown host mirrors.opencas.cn You may need to adjust the proxy settings in Gradle 解决办法 - 程序员大本营 ...
- Jar 包下载以及 maven jar 包配置
学习内容: jar包下载是我们必须掌握的一个内容,不管是使用Maven项目还是其他项目,一般都需要引入外部的 jar 包 jar包下载 下载地址(打不开网址的直接百度搜索 maven reposito ...
- 前端复制粘贴文字clipBoard.js的使用
1. vue 中的复制粘贴: <div class="mainTextItem" @click="copyTXTOne" id="copyOn ...
- 关于webpack,你想知道的都在这;
咱也标题党一回 哈哈哈 要使用webpack优化项目打包构建速度,首先得知道问题出在哪, 要知道问题出在哪,首先得知道webpack 打包的基本原理才能针对性的去做优化,下面首先了解webpack基本 ...
- VUE-SSR原理和使用
开篇N问 SSR解决了什么问题?SSR存在那些问题?SSR优点缺点是什么如何使用以及原理 自我总结了有如下优势 - SSR利于seo优化,因为实现了在node中解析vue,将实例渲染成一个字符串直接 ...
- Windows安装使用wget
Windows安装使用wget 0x01 什么是wget 你肯定知道,否则就不会安装了 0x02 下载wget 下载地址:https://eternallybored.org/misc/wget/ 在 ...
- mybatisPlus crud操作注意事项
1.调用IService里的update方法,如果是自定义根据除主键外其它字段更新的时候,如果给主键id设置其它值不会更新主键id,如果未设置主键id值或者设置为null,同样不会更新主键id. 2. ...
- 『现学现忘』Git基础 — 7、设置Git Bash终端默认路径
目录 1.Git Bash默认路径 2.如何查看Git Bash终端默认路径 3.如何修改Git Bash终端的默认路径 4.拓展:指定目录进入Git Bash终端 5.注意事项 如果您不熟悉Git命 ...