zoukankan      html  css  js  c++  java
  • java9-1.类,抽象类,接口的综合小练习

      1 /*
      2  教练和运动员案例(学生分析然后讲解)
      3     乒乓球运动员和篮球运动员。
      4     乒乓球教练和篮球教练。
      5     为了出国交流,跟乒乓球相关的人员都需要学习英语。
      6     请用所学知识:
      7     分析,这个案例中有哪些抽象类,哪些接口,哪些具体类。
      8         分析:
      9             1、共同的属性:姓名 年龄
     10                    共同的方法:吃饭,睡觉
     11                    其中吃饭的内容两者不同,所以用抽象方法
     12                    不同的方法:队员练习,教练教导,分别写入队员类和教练类
     13             2、接口:学习英语
     14             3、抽象类:人类;  运动员类、教练类 这两个继承人类
     15                    具体类:乒乓球队员类、教练类和篮球队员类、教练类 ; 分别继承运动员类或教练类,其中乒乓球有关的扩展学习英语接口     
     16 */
     17 
     18 //定义学英语接口
     19 interface English{
     20     public abstract void speak();
     21 }
     22 
     23 //定义抽象人类
     24 abstract class person{
     25     //成员变量
     26     private String name;
     27     private int age;
     28     
     29     //无参构造方法
     30     public person(){}
     31     
     32     //有参构造方法
     33     public person(String name,int age){
     34         this.name = name;
     35         this.age = age;
     36     }
     37     
     38     public String getName(){
     39         return name;
     40     }
     41     public void setName(String name){
     42         this.name = name;
     43     }
     44     public int getAge(){
     45         return age;
     46     }
     47     public void setAge(int age){
     48         this.age = age;
     49     }
     50     
     51     //抽象方法
     52     public abstract void eat();
     53     //成员方法
     54     public void sleep(){
     55         System.out.println("睡觉去");
     56     }
     57 }
     58 
     59 //抽象运动员类
     60 abstract class player extends person{
     61     //无参构造方法
     62     public player(){}
     63     //有参构造方法
     64     public player(String name,int age){
     65         super(name,age);
     66     }
     67     //特有的方法,练习,不得不做的,用抽象
     68     public abstract void student();
     69 }
     70 
     71 //抽象教练类
     72 abstract class coach extends person{
     73     public coach(){}
     74     public coach(String name,int age){
     75         super(name,age);
     76     }
     77     public abstract void teacher();
     78 }
     79 
     80 //具体乒乓球运动类 
     81 class pingpangplayer extends player implements English{
     82     public pingpangplayer(){}
     83     public pingpangplayer(String name,int age){
     84         super(name,age);
     85     }
     86     public void speak() {
     87         System.out.println("要学习英语");
     88     }
     89     public void student() {
     90         System.out.println("要练习发球和接球的技巧");
     91     }
     92     public void eat() {
     93         System.out.println("吃清淡的饭菜");
     94     }
     95 }
     96 
     97 //具体乒乓球教练类
     98 class pingpangcoach extends coach implements English{
     99     public pingpangcoach(){}
    100     public pingpangcoach(String name,int age){
    101         super(name,age);
    102     }
    103     public void speak(){
    104         System.out.println("要学习英语");
    105     }
    106     public void teacher(){
    107         System.out.println("要教导队员发球和接球的技巧");
    108     }
    109     public void eat(){
    110         System.out.println("跟着队员吃清淡的饭菜");
    111     }
    112 }
    113 
    114 //具体篮球队员类
    115 class basketballplayer extends player{
    116     public basketballplayer(){}
    117     public basketballplayer(String name,int age){
    118         super(name,age);
    119     }
    120     public void eat(){
    121         System.out.println("要吃油腻的饭菜");
    122     }
    123     public void student(){
    124         System.out.println("要练习运球和投篮技巧");
    125     }
    126 }
    127 //具体篮球教练类
    128 class basketballcoach extends coach{
    129     public basketballcoach(){}
    130     public basketballcoach(String name,int age){
    131         super(name,age);
    132     }
    133     public void eat(){
    134         System.out.println("要跟着队员,吃油腻的饭菜");
    135     }
    136     public void teacher(){
    137         System.out.println("要教导队员运球和投篮技巧");
    138     }
    139 }
    140 
    141 class InterfaceTest1 {
    142     public static void main(String[] args) {
    143         //测试运动员(乒乓球运动员和篮球运动员)
    144         //乒乓球运动员
    145         pingpangplayer p3 = new pingpangplayer("马龙",26);
    146         p3.eat();
    147         p3.sleep();
    148         p3.student();
    149         p3.speak();
    150         
    151         basketballplayer b2p = new basketballplayer("姚明",38);
    152         b2p.eat();
    153         b2p.sleep();
    154         b2p.student();
    155         
    156         System.out.println("------------");
    157         //测试教练类
    158         
    159         pingpangcoach p2c = new pingpangcoach("教练p",41);
    160         p2c.eat();
    161         p2c.sleep();
    162         p2c.teacher();
    163         p2c.speak();
    164         
    165         basketballcoach b2c = new basketballcoach("教练b",38);
    166         b2c.eat();
    167         b2c.sleep();
    168         b2c.teacher();
    169         
    170     }
    171 
    172 }
    何事都只需坚持.. 难? 维熟尔。 LZL的自学历程...只需坚持
  • 相关阅读:
    redis整合spring(三)注解的方式缓存
    redis整合spring (二)
    redis整合spring (一)
    Redis面试
    JVM(六)JVM调优
    JVM故障(二)GC导致cpu飙高
    JVM故障(一)CPU跑满定位
    JVM 故障调优
    洛谷-P2141 珠心算测验
    洛谷-P1205 [USACO1.2]方块转换 Transformations
  • 原文地址:https://www.cnblogs.com/LZL-student/p/5860918.html
Copyright © 2011-2022 走看看