汽车接口、公共汽车类与载重卡车类

  • 创建汽车接口
  • 创建司机类
  • 测试司机类

创建汽车接口

/*** 功能:汽车接口* 作者:许锐* 日期:2022年05月12日*/
public interface Car {void start();void run();void stop();
}

创建司机类

/*** 功能:司机类* 作者:许锐* 日期:2022年05月12日*/
public class Driver {private String name;public String getName(){return name;}public void setName(String name){this.name = name;}public void drive(Car car){if (car instanceof Benz){Benz benz = (Benz) car;benz.speak();}car.start();car.run();car.stop();}/***成员内部类Benz*/class Benz implements Car{private String model;private double price;private String color;public  String getModel(){return model;}public void setModel(String model) {this.model = model;}public double getPrice() {return price;}public void setPrice(double price) {this.price =price;}public String getColor(){return color;}public void setColor(String color){this.color = color;}@Overridepublic void start() {System.out.println("奔驰[" + model + "]起步.....");}@Overridepublic void run() {System.out.println("奔驰[" + model + "]行驶.....");}@Overridepublic void stop() {System.out.println("奔驰[" + model + "]停止.....");}public void speak(){System.out.println(color+"奔驰["+ model +"]单价:"+ price +"万~");}}
}

测试司机类

/*** 功能:测试司机类* 作者:许锐* 日期:2022年05月12日*/
public class TestDriver {public static void main(String[] args){//创建司机对象(外部类对象)Driver driver = new Driver();// 设置司机对象属性driver.setName("唐小刚");// 基于司机对象(外部类对象)创建奔驰对象(内部类对象)Driver.Benz benz = driver.new Benz();// 设置奔驰对象的属性benz.setModel("梅赛德斯-AMG A 35 L 4MATIC");benz.setPrice(45);benz.setColor("蓝色");// 调用司机对象的驾驶办法driver.drive(benz);}
}

运行程序,查看结果
运行TestDriver类

【汽车接口、公共汽车类与载重卡车类】相关推荐

  1. java 组合实现汽车类 问题描述:一辆Car有(has)四个轮子(Wheels)和一个发动机(Engine)。现在要求用组合方法设计类Car、类Wheel和类Engine。

    题目:组合实现汽车类 问题描述:一辆Car有(has)四个轮子(Wheels)和一个发动机(Engine).现在要求用组合方法设计类Car.类Wheel和类Engine (1) 类Engine 有字符 ...

  2. public接口可以被任何一个类实现_一文带你深入Java核心技术:对象克隆+接口与回调,还有这种操作...

    对象克隆 当拷贝一个变量时,原始变量与拷贝变量引用同一个对象,如图6-1所示.这就是说,改变一个变量所引用的对象将会对另一个变量产生影响. Employee original = new Employ ...

  3. 一个类可以实现多个接口但是只能实现一个类

    public class SpbmServiceImpl extends BasicServiceImpl implements ISpbmService,ISpbmDao {} 一个类可以实现多个接 ...

  4. java类接口实验_实验3_Java类的继承和接口的定义和使用

    本次有三题:学会Java类的继承.接口的定义和使用 // Ex3_1.java /** * 题目要求: * 修改例5.7(P95)实现在页面中拖动鼠标画出矩形,矩形的对角线为点击并拖动鼠标形成的直线线 ...

  5. Java代码示例: 使用reflections工具类获取某接口下所有的实现类

    pom依赖 <dependency><groupId>org.reflections</groupId><artifactId>reflections& ...

  6. c++虚继承和虚函数和抽象类、接口类,聚合类

    虚继承 虚继承用于解决多继承条件下的菱形继承问题(浪费存储空间.存在二义性). 底层实现原理与编译器相关,一般通过虚基类指针和虚基类表实现,每个虚继承的子类都有一个虚基类指针(占用一个指针的存储空间, ...

  7. [MyBatis]DAO层只写接口,不用写实现类

    团队开发一个项目,由老大架了一个框架,遇到了DAO层不用写接口了,我也是用了2次才记住这个事的,因为自己一直都是习惯于写DAO层的实现类,所以,习惯性的还是写了个实现类.于是遇到错误了. 找不到那个方 ...

  8. 同一接口有多个实现类,怎么来注入一个指定的实现?@Resource、@Autowired、@Qualifier

    如果一个接口有2个以上不同的实现类, 那么如何Autowire一个指定的实现 1:首先,UserService接口有两个实现类 UserService1和 UserService2 UserServi ...

  9. 抽象类和接口设计_如何设计类和接口

    抽象类和接口设计 本文是我们名为" 高级Java "的学院课程的一部分. 本课程旨在帮助您最有效地使用Java. 它讨论了高级主题,包括对象创建,并发,序列化,反射等. 它将指导您 ...

最新文章

  1. Python基础知识详解
  2. Apache 与Tomcat
  3. Python正在吞噬世界
  4. python经典程序练习题-99道经典练习题助你全面掌握python基础知识,附技巧答案...
  5. matlab fill 渐变,Matlab的渐变色填充(一)
  6. Linux下进度条小程序
  7. Qt Creator指定文本编辑器设置
  8. qt爬取网页信息_豆瓣TOP250数据爬取
  9. 461. 汉明距离 golang
  10. SQL Server Alwayson创建代理作业注意事项
  11. DNS递归查询与迭代查询
  12. mysql 外键约束_MySQL之外键约束(FOREIGN KEY)
  13. 干货 | 平面设计、UI 设计和视觉设计的区别
  14. 11款中兴盒子固件合集分享(已列出全部型号,附刷机教程)
  15. 基于raft协议的P2P下载器
  16. linux做单臂路由,linux做单臂路由实现trunk 使vlan之间通信
  17. 或非门sr锁存器_sr锁存器的工作原理
  18. MySqlDataAdapter.Update -- 报错
  19. 11.集合之List
  20. java8中 Collectors.groupingBy用法

热门文章

  1. 成功解决 TypeError: type numpy.ndarray doesn't define __round__ method
  2. 封神台-第二章 尤里的复仇
  3. 基于MFC实现的赛车游戏
  4. 【笔记】LaTeX数学公式
  5. 码农老黄历-看今天哪个方位BUG最少
  6. 小红帽linux各功能中英,小红帽「中英文对照」
  7. python蒙特卡洛方法圆周率_python实现蒙特卡罗方法教程
  8. 点桌面图标进网页HTML,怎么把浏览器内的网页设置图标到电脑桌面
  9. Cocos Creator 判断Touch位置在节点(Node)内
  10. android服务下载apk下载地址,android 从服务器上获取APK并下载安装