接口和abstract类的使用

/**

  • 接口 和absract类的使用
  • @author BO

*/

abstract class MotorVehicles{

           //定义抽象类

abstract void broke();//子类必须重写父类的方法   }

     interface MoneyFare{//定义接口
//默认为抽象方法, 不能用 final 或 static修饰符修饰
void charge();//等价于 public abstract void charge();
                 }
  interface ControlTemperature{
void controlAirTemperature();
     }
     //定义 bus 继承自 mot 实现了 mon
 class Bus extends MotorVehicles implements MoneyFare{
void broke(){//重写父类的方法
    System.out.println("公交车!!!!");
}
public void charge(){//实现接口函数
    System.out.println("收费是1元钱!!!");
    
}
}
class Taxi extends MotorVehicles implements             MoneyFare,ControlTemperature{
public void charge(){
    System.out.println("起步价 10块钱");
}
public void controlAirTemperature(){
    System.out.println("这个车有空调");
}
void broke(){
    System.out.println("Taxi");
}
  }
    class Cinema implements MoneyFare,ControlTemperature{
public void  charge(){
    System.out.println("看电影不贵,快来");
}
public void controlAirTemperature(){
    System.out.println("电影院也有空调");
}
   }

   public class Implem {
     public static void main(String[] args) {
Bus bus = new Bus();
Taxi taxi = new Taxi();
Cinema cinema = new Cinema();
bus.broke();
bus.charge();
taxi.broke();
taxi.charge();
taxi.controlAirTemperature();
cinema.charge();
cinema.controlAirTemperature();
        }
       }

你可能感兴趣的:(接口和abstract类的使用)