面相对象一

类的关系:

纵向:

继承:父子关系——extends
实现:类对接口的实现——implements

横向:

依赖:

双方的地位往往是独立平等的(地位)
是偶尔的、临时性的、不频繁的(依赖程度)
代码层面的表现形式而言,往往是局部的变量
eg:员工和游轮

关联:

双方的地位往往是独立的、平等的(地位)
是长期的、稳定的、频繁的(依赖程度)
代码层面的表现形式而言,关联往往以全局属性的形式存在
eg:员工和手机

聚合:

双方的地位不是平等的,是整体和部分之间的关系(地位)
是长期的、稳定的、频繁的,这种关系比关联更强,以至于在形式上出现了整体和部分之间的关系。
整体和部分都有自己的生命周期,一方的消失另外一方不会跟着消失。(依赖程度)
代码层面的表现形式而言可参考关联
eg:公司和员工

组合:双方的地位不是平等的,是整体和部分之间的关系(地位)

比聚合更强,部分的生命周期取决于整体,部分随着整体的消失而消失(依赖程度)
代码层面的表现形式而言可参考关联
区分是聚合还是组合的核心点是在生命周期
eg:公司和部门

封装

封装是面向对象编程的核心思想。封装的载体是类,对象的属性和行为被封装在这个类中。

*** 水果类 */
public class Fruit {
//名称
public String fruitName;
//价格 private double fruitPrice;
//产地
protected String origin;
public double getFruitPrice() { return fruitPrice;
}
public void setFruitPrice(double fruitPrice) { this.fruitPrice = fruitPrice;
}
}

public class FruitApp { public static void main(String[] args) {
Fruit fruit = new Fruit();
fruit.fruitName = "苹果";
System.out.println(fruit.fruitName);
fruit.setFruitPrice(8.8);
System.out.println(fruit.getFruitPrice());
fruit.origin = "山东烟台";
System.out.println(fruit.origin);
}
}

继承

子类继承父类,可以继承父类原有的属性和方法,也可以增加其他的属性和方法,可以直接重写父类中的某些方法。

微信截图_20181125131038.png
微信截图_20181125131047.png
微信截图_20181125131055.png
微信截图_20181125131106.png

多态

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,014评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,780评论 18 399
  • 今天本来想做包子的,可是一直玩,忘记发面了,改做饺子吧。 下午六点开始折腾! 一、做馅儿: 看冰箱里有啥存货放啥,...
    Rachel09阅读 244评论 0 0
  • 学着主宰自己的生活。 即使孑然一身,也不算一个太坏的局面。 不自怜、不自卑、不怨叹, 一日一日来,一步一步走, 那...
    不青春不留白阅读 386评论 0 0
  • 现在经常会想到那段惬意的时光,所以我记录下来,害怕有一天忘记了与你相识的细节。 清早从杭州坐大巴到乌镇,和小可爱一...
    清和弟弟阅读 290评论 0 0