/*
老师和学生案例,加入抽烟的额外功能

分析: 从具体到抽象
老师:姓名,年龄,吃饭,睡觉
学生:姓名,年龄,吃饭,睡觉

由于有共性功能,我们提取出一个父类,人类。

人类
姓名,年龄
吃饭();
睡觉(){}

抽烟的额外功能不是人或者老师,或者学生一开始就应该具备的所以,我们把它定义为接口

抽烟接口

部分老师抽烟:实现抽烟接口
部分学生抽烟:实现抽烟接口

实现:从抽象到具体

使用:具体
*/
//定义抽烟接口
interface Smoking {
//抽烟的抽象方法
public abstract void smoke();
}

//定义抽象人类
abstract class Person {
//姓名
private String name;
//年龄
private int age;

public Person() {}

public Person(String name,int age) {
this.name = name;
this.age = age;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

//吃饭();
public abstract void eat();

//睡觉(){}
public void sleep() {
System.out.println("睡觉觉了");
}
}

/ /具体老师类
class Teacher extends Person {
public Teacher() {}

public Teacher(String name,int age) {
super(name,age);
}

public void eat() {
System.out.println(" 吃大白菜");
}
}

//具体学生类
class Student extends Person {
public Student() {}

public Student(String name,int age) {
super(name,age);
}

public void eat() {
System.out.println(" 吃红烧肉");
}
}

//抽烟的老师
class SmokingTeacher extends Teacher implements Smoking {
public SmokingTeacher() {}

public SmokingTeacher(String name,int age) {
super(name,age);
}

public void smoke() {
System.out.println("抽烟的老师");
}
}

//抽烟的学生
class SmokingStudent extends Student implements Smoking {
public SmokingStudent() {}

public SmokingStudent(String name,int age) {
super(name,age);
}

public void smoke() {
System.out.println("抽烟的学生");
}
}

class InterfaceTest2 {
public static void main(String[] args) {
//测试学生
SmokingStudent ss = new SmokingStudent();
ss.setName("林青霞");
ss.setAge(27);
System.out.println(ss.getName()+"---"+ss.getAge());
ss.eat();
ss.sleep();
ss.smoke();

System.out.println("-------------------");

SmokingStudent ss2 = new SmokingStudent("刘意",30);
System.out.println(ss2.getName()+"---"+ss2.getAge());
ss.eat();
ss.sleep();
ss.smoke();

//测试老师留给自己练习
}
}

老师和学生案例,加入抽烟的额外功能相关推荐

  1. java老师和学生(java老师学生类合集)

    Java学生老师类是一种用于模拟学生和老师之间的关系的类,通过它可以模拟学生和老师之间的信息交互.学生交作业等行为. 1.java老师和学生什么意思说法一,两种身份.java老师和学生是指在学习jav ...

  2. 钢七连实战教学  老师和学生的差别

    实战教学  老师和学生的差别 一.实战教学内容 1.通用办法. 查资料,分析设计,编码,调试. 2.语言无关. 优秀的厨具,可以做出难吃的饭. 3.基础课程,基础课程在项目中的应用 小问题,高难度. ...

  3. 计算机课怎么给老师发消息,案例 | 信息化课堂 老师如何教

    原标题:案例 | 信息化课堂 老师如何教 案例 | 信息化课堂 老师如何教 2016-11-08中国教育信息化 点击上方蓝字「中国教育信息化」一键关注 随着信息技术的飞速发展,"互联网+&q ...

  4. 教师试讲学生名字_我们如何帮助老师学习学生的名字

    教师试讲学生名字 At the beginning of each new semester or school year, teachers are faced with the challenge ...

  5. # 自定义异常类 问题: 请使用代码实现 每一个学生(Student)都有学号,姓名和分数,分数永远不能为负数 如果老师给学生赋值一个负数,抛出一个自定异常

    自定义异常类 问题: 请使用代码实现 每一个学生(Student)都有学号,姓名和分数,分数永远不能为负数 如果老师给学生赋值一个负数,抛出一个自定异常 public class NoScoreExc ...

  6. 学习韩立刚老师IT运维课程,成为韩立刚老师正式学生,在全国范围为你就近推荐工作。...

    2018年5月21日,万恒教育成立IT运维就业指导部门,为韩立刚老师正式学生推荐工作,实习单位.和国内IT外包公司HR长期合作,韩立刚老师技术考核通过的学生,为学生在全国范围就近推荐工作. 有学习IT ...

  7. 小学计算机老师毕业留言,高三老师给学生的毕业留言

    高三老师给学生的毕业留言第1篇 同学们: 在这离歌响起的时刻,我的内心涌动着难以言说的感情激流, 仿佛是在昨天,你们怯怯地出现在我的视线里,带着少年的稚嫩与纯真.我的生活里突然多了60多个需要我操心劳 ...

  8. 需求:定义老师和学生类,然后写代码测试;最后找到老师类和学生类当中的共性内容,抽出一个父类,用继承的方式改写代码,并进行测试

    需求:定义老师和学生类,然后写代码测试;最后找到老师类和学生类当中的共性内容,抽出一个父类 ,用继承的方式改写代码,并进行测试 思路: 1. 定义老师类(姓名,年龄,教书()) 2. 定义学生类(姓名 ...

  9. 制作一个评选优秀老师和学生的系统,系统根据提示输入类别(老师或学生), 如果是老师则输入姓名和论文数,学生则输入姓名和考试成绩,输入若干人员信息后使用结束符完成输入,程序根据输入的数据列出优秀老师和优

    制作一个评选优秀老师和学生的系统,系统根据提示输入类别(老师或学生), 如果是老师则输入姓名和论文数,学生则输入姓名和考试成绩,输入若干人员信息后使用结束符完成输入,程序根据输入的数据列出优秀老师和优 ...

最新文章

  1. OpenResty+Keepalived组建高可用集群+双主模式
  2. keras和tensorflow使用 keras.callbacks.EarlyStopping 提前结束训练
  3. 你们的竞赛更需要你们的参与
  4. 阿里达摩院实习生立功!何恺明Mask R-CNN精度提升,一半输入数据量就行 | CVPR2020...
  5. oracle Deferrable constraint 详解以及用法.
  6. Parity Alternated Deletions
  7. Java黑皮书课后题第8章:*8.22(偶数个1)编写一个程序,产生一个6*6的填满0和1的二维矩阵,显示该矩阵,检测是否每行以及每列中有偶数个1
  8. 【Android】launcher启动参数
  9. 这套前端可视化框架,让数据栩栩如生!
  10. 涅槃重生的下一个超级风口:8本书助你赢在未来
  11. 7-110 吃火锅 (15 分)
  12. c语言中错误为ffblk未定义,C语言中头文件及函数的含意的总分类
  13. 2017-2018-1 20155301 《信息安全系统设计基础》第十三周学习总结
  14. libevent 接收TCP连接
  15. c# 获取字符串的字节数
  16. R语言实现常用的5种分析方法(主成分+因子+多维标度+判别+聚类
  17. Chain of Responsibility(职责链模式)
  18. 阿里邮箱企业版在电脑PC客户端设置方法汇总
  19. Spring data elasticsearch添加同义词组件实现同义词热更新
  20. 服务器数据恢复;IBM V7000数据恢复方法

热门文章

  1. 学会开车的重要性!并不只是代步这么简单!!!
  2. skip-external-locking skip-locking参数详解
  3. 取得当前iPhone内存使用量
  4. 安全性分析之“面向全场景的鸿蒙系统”
  5. Gitolite 教程
  6. 图像处理HALCON中的模板匹配方法总结
  7. 小学一年级计算机社团计划,一年级2班写字社团活动计划
  8. 今年Chinajoy除了showgirl看什么
  9. 区块链入门必读(FISCO)
  10. android单元测试Esspresso测试popupwindow,webview