一、需求
假设让我们写一个人驾驶迈腾的功能,那么我们如何去设计?
二、功能实现
2.1一般人会通过聚合的方式实现
聚合:是一种强的关联关系。是整体和个体之间的关系。如胳膊类和人类。个人理解聚合关系是一种have a的拥有关系。
package edu.aeon.demo; /** * [说明]:迈腾类 * @author aeon(qq:1584875179) * */ public class MaiTen { /** * 行驶 */ public void run(){ System.out.println("MaiTen.run()"); System.out.println("迈腾在行驶!"); } /** * 停止 */ public void stop(){ System.out.println("MaiTen.stop()"); System.out.println("迈腾停下来了!"); } }
package edu.aeon.demo; /** * [说明]:人类 * @author aeon(qq:1584875179) * */ public class Person { private MaiTen maiTen; //getter/setter public MaiTen getMaiTen() { return maiTen; } public void setMaiTen(MaiTen maiTen) { this.maiTen = maiTen; } /** * 驾驶 */ public void drive(){ System.out.println("Person.drive()"); maiTen.run(); maiTen.stop(); } }
package edu.aeon.demo; /** * [说明]:测试类 * @author aeon(qq:1584875179) * */ public class Test { public static void main(String[] args) { Person person=new Person(); MaiTen maiTen=new MaiTen(); person.setMaiTen(maiTen); person.drive(); } }
测试结果截图:
二、使用依赖关系
依赖关系是类与类之间的联接。一个类依赖于另一个类的定义。如人驾驶迈腾必须要依赖迈腾。
package edu.aeon.demo; /** * [说明]:迈腾类 * @author aeon(qq:1584875179) * */ public class MaiTen { /** * 行驶 */ public void run(){ System.out.println("MaiTen.run()"); System.out.println("迈腾在行驶!"); } /** * 停止 */ public void stop(){ System.out.println("MaiTen.stop()"); System.out.println("迈腾停下来了!"); } }
package edu.aeon.demo; /** * [说明]:人类 * @author aeon(qq:1584875179) * */ public class Person { /** * 驾驶 */ public void drive(MaiTen maiTen){ System.out.println("Person.drive()"); maiTen.run(); maiTen.stop(); } }
package edu.aeon.demo; /** * [说明]:测试类 * @author aeon(qq:1584875179) * */ public class Test { public static void main(String[] args) { Person person=new Person(); MaiTen maiTen=new MaiTen(); person.drive(maiTen); } }
测试结果截图: