zoukankan      html  css  js  c++  java
  • 30.Java基础_接口_抽象类_具体类实现案例

      1 public interface SpeakEnglish {
      2     public abstract void speak();
      3 }
      4 
      5 public abstract class Person {
      6     private String name;
      7     private  int age;
      8     public Person(){}
      9     public Person(String name, int age) {
     10         this.name = name;
     11         this.age = age;
     12     }
     13     public String getName() {
     14         return name;
     15     }
     16     public void setName(String name) {
     17         this.name = name;
     18     }
     19     public int getAge() {
     20         return age;
     21     }
     22     public void setAge(int age) {
     23         this.age = age;
     24     }
     25     public abstract void eat();
     26 }
     27 
     28 public abstract class Coach extends Person{
     29     public Coach() {
     30     }
     31     public Coach(String name, int age) {
     32         super(name, age);
     33     }
     34     public abstract void teach();
     35 }
     36 
     37 public abstract class Player extends Person{
     38     public Player() {
     39     }
     40     public Player(String name, int age) {
     41         super(name, age);
     42     }
     43     public abstract void study();
     44 }
     45 
     46 public class BasketballCoach extends Coach{
     47     public BasketballCoach() {
     48     }
     49     public BasketballCoach(String name, int age) {
     50         super(name, age);
     51     }
     52     @Override
     53     public void eat() {
     54         System.out.println("篮球教练吃炒饭!");
     55     }
     56     @Override
     57     public void teach() {
     58         System.out.println("篮球教练教运球和投篮!");
     59     }
     60 }
     61 
     62 public class BasketballPlayer extends Player{
     63     public BasketballPlayer() {
     64     }
     65     public BasketballPlayer(String name, int age) {
     66         super(name, age);
     67     }
     68     @Override
     69     public void eat() {
     70         System.out.println("篮球运动员吃炒年糕");
     71     }
     72     @Override
     73     public void study() {
     74         System.out.println("篮球运动员学习运球和投篮!");
     75     }
     76 }
     77 
     78 public class PingPangCoach extends Coach implements SpeakEnglish{
     79     public PingPangCoach() {
     80     }
     81     public PingPangCoach(String name, int age) {
     82         super(name, age);
     83     }
     84     @Override
     85     public void eat() {
     86         System.out.println("乒乓球教练吃炒面");
     87     }
     88     @Override
     89     public void teach() {
     90         System.out.println("乒乓球教练教发球和接球!");
     91     }
     92     @Override
     93     public void speak() {
     94         System.out.println("乒乓球教练说英语");
     95     }
     96 }
     97 
     98 public class PingPangPlayer extends Player implements SpeakEnglish{
     99     public PingPangPlayer() {
    100     }
    101     public PingPangPlayer(String name, int age) {
    102         super(name, age);
    103     }
    104     @Override
    105     public void eat() {
    106         System.out.println("乒乓球运动员吃炒粉丝");
    107     }
    108     @Override
    109     public void study() {
    110         System.out.println("乒乓球运动员学习发球和接球");
    111     }
    112     @Override
    113     public void speak() {
    114         System.out.println("乒乓球运动员说英语");
    115     }
    116 }
    117 
    118 //测试类
    119 public class test {
    120     public static void main(String[] args) {
    121         //创建对象
    122         PingPangPlayer ppp=new PingPangPlayer("王浩",30);
    123         System.out.println(ppp.getName()+","+ppp.getAge());
    124         ppp.eat();
    125         ppp.study();
    126         ppp.speak();
    127         System.out.println("------------------");
    128         BasketballPlayer bp=new BasketballPlayer("姚明",40);
    129         System.out.println(bp.getName()+","+bp.getAge());
    130         bp.eat();
    131         bp.study();
    132     }
    133 }

  • 相关阅读:
    ios获取iphone手机设备型号
    iOS项目中所有icon的尺寸以及命名
    c++达内视频
    ffmpeg教程
    FFMPEG SDK 教程
    minicom 下载
    线程同步的几种方法的总结
    多线程笔试面试概念问答
    buntu Rhythmbox解决中文乱码
    菜鸟学习ios
  • 原文地址:https://www.cnblogs.com/NiBosS/p/11982877.html
Copyright © 2011-2022 走看看