Java学习笔记(三)

理解面向对象(一)

UML:统一建模语言。

面向对象的程序单位是类,面向过程的程序单位是函数(方法)。
面向对象比面向过程的编程粒度大,因此更加简单易用。


面向过程的程序世界里,一切以函数为中心

吃(猪八戒,西瓜);

面向对象的程序世界里,一切以对象为中心

猪八戒 . 吃 ( 西瓜 ) ;

面向对象三大基本特征+抽象

封装 :将对象的实现细节隐藏,通过公用方法来暴露该对象的功能
继承:实现软件复用的重要手段,当子类继承父类后,直接获得父类的属性方法
多态:子类对象可以赋值给父类变量——同一类型的变量在执行同一个方法时,可能表现不同的特征

animal.cry
dog.cry
pig.cry

(抽象):也是面向对象的重要部分。只考虑吧部分问题。之所以不是面向对象的基本特征是因为所有的编程语言都需要抽象。


由于多继承可能会引起继承结构的混乱,所以Java不支持多继承


“面向对象”与“基于对象”

  • 两者都实现了封装的概念
  • 不同的是,“基于对象”没有实现继承和多态,不能让开发者派生新的类,只能使用现有的对象和方法,如JavaScript

面向对象程序员分为“类库的创建者”和“类库的使用者”,后者并不都是具备了面向对象思想的人。类库只是在形式上面向对象,实质上只是函数库的一种扩展。


UML(统一建模语言)介绍

UML2.0一共包括13种正试图形。活动图,类图,通信图,组件图,复合结构图,部署图,交互概观图,对象图,包图,顺序图,状态机图,定时图,用例图。


UML图实际上是用于描述,记录软件分析设计的工具。
常用工具:例图,类图,组件图,部署图,顺序图,活动图,状态机图


用例图

用例图
主要在需求分析阶段使用,用于描述系统实现的功能,方便与顾客交流

类图

类图可以显示系统的静态结构,也可以表示实体之间的相互关系。
类之间的三种基本关系:

  • 关联(包括聚类组合
    – 类的某个属性应用到另一个类的实体时就变成关联
    – 组合比聚合更加严格:两只手臂组合成学生或教师(手臂只能是这个老师或学生的),一个或多个学生聚合成篮球俱乐部或书法俱乐部(学生可以既是书法又是篮球俱乐部的
  • 泛化(与继承是同一个概念)
  • 依赖
    一个类的改动会导致另一个类的改动时,两个类之间存在依赖关系。
    例如DefaultModel中的数据模型改变,JTable中的数据表现也会改变,数据改变以来于数据模型。

组件图

现代大型应用不只是单独一个类或者一组类所能完成的,通常会有一个或多个可部署的组件。


组件图包括了组件、接口、和port等图元

部署图

软件的不同部分可能要部署在不同地方不同平台上,部署图用于描述软件系统如何部署到硬件环境中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值