以人类 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 题目描述 定义一个矩形类,数据成员包括左下角和右上角坐标 ...
随机推荐
- 隐藏IE10默认在input框输入内容后显示“X”按钮
::-ms-clear{display: none;} ::-ms-reveal{display: none;}
- webstrom Debug 调试vue项目
第一种,使用vue插件 下载插件:https://chrome.google.com/web... 这样直接run一个vue项目,你就会看见插件标亮了 打开调试模式,你就会看见最后有个vue标记,打开 ...
- AS之去掉顶部标题栏
在该目录下,将原本<style name的这行代码改为: <style name="Theme.Tongxunlu" parent="Theme.Materi ...
- Supervisor学习笔记
请点击我 > supervisor笔记
- Ubuntu20.04中创建Pycharm桌面快捷方式
[Desktop Entry] Type=Application Name=Pycharm GenericName=Pycharm3 Comment=Pycharm3:The Python IDE E ...
- 使用 Jenkins 进行持续集成与发布流程图
应用构建和发布流程说明: 用户向 Gitlab 提交代码,代码中必须包含 Dockerfile 将代码提交到远程仓库 用户在发布应用时需要填写 git 仓库地址和分支.服务类型.服务名称.资源数量.实 ...
- 12-factors
12-factors 官方网址 The Twelve-Factor App 简介 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS).12-Factor 为构建如下的 ...
- mysql查询 if判断、case语句的使用等
一. 查询的数字转换为中文返回前端 1. 如果是0或1表状态等,可用: IF(字段 = 0, '否', '是') AS xxx 2. 如果是多个值,比如1,2,3可用: ELT(字段, '计划治理', ...
- Pinpoint介绍及docker安装方式
一.介绍 Pinpoint是用Java编写的大型分布式系统的APM(Application Performance Management应用程序性能管理)工具,受Dapper论文的启发,Pinpoin ...
- Typora教程
写Mrakdown费事?Typora让你像写Word一样行云流水,所见即所得. ###简介 Typora是一款轻便简洁的Markdown编辑器,支持即时渲染技术,这也是与其他Markdown编辑器最显 ...