以人类 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 题目描述 定义一个矩形类,数据成员包括左下角和右上角坐标 ...
随机推荐
- 二十三、原理图和PCB交互式布局
上图 在原理图里面直接选择在PCB里面就可以移动了,大功告成
- JavaScript HTML5脚本编程——“历史状态管理”的注意要点
历史状态管理是现代Web应用开发中的一个难点.在现代Web应用中,用户的每次操作不一定会打开一个全新的页面,因此"后退"和"前进"按钮也就失去了作用,导致用户很 ...
- 纯css模拟电子钟
先看效果 演示地址: https://yueminhu.github.io/di...点击左边拉环切换夜间模式. 用到了伪元素生成数字的小三角`currentColor和color: inherit` ...
- PhantomJS,隐身浏览器
PhantomJS PhantomJS是一个无界面的浏览器,实现了传统浏览器的所有功能,除了没有界面,因此,这是一个隐身浏览器. PhantomJS官网 API,特别需要注意的是Web Page Mo ...
- 手绘模型图带你认识Kafka服务端网络模型
摘要:Kafka中的网络模型就是基于主从Reactor多线程进行设计的. 本文分享自华为云社区<图解Kafka服务端网络模型>,作者:石臻臻的杂货铺 . Kafka中的网络模型就是基于主从 ...
- 访问控制protected是不同包中对子类可见,什么意思?
2.2 以下例子说明:protected是不同包中对子类可见,对非子类不可见. 例1.2.2.a:---本例为正常用法. package p1;public class A { protecte ...
- 反射常用API以及内省机制(代码)
学习内容: (1)获取构造函数 这里不贴Person类了,不然代码太多太乱了,只给出一些常用API // 创建字节码对象 Class<?> aClass = Class.forName(& ...
- for 循环打印直角三角形、正三角形、棱形
学习目标: 熟练掌握 for 循环的使用 例题: 1.需求:打印直角三角形 代码如下: // 左直角 for(int i = 0; i < 5; i++) { for(int j = 0; j ...
- web.xml 配置 contextConfigLocation
web.xml中classpath:和classpath*: 有什么区别? classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件 ...
- SpringBoot注解自动扫描-底层实现
分析上文Spring Boot快速入门 @SpringBootApplication public class HelloWorldApplication { public static void m ...