一、软件开发经历的生命周期:

①软件分析 ②软件设计 ③软件编码 ④ 软件测试 ⑤ 软件部署 ⑥软件维护

二、为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点:

① 可重用性 ② 可扩展性 ③ 可维护性

三、系统结构是指系统由多个子系统组成,以及子系统由多个更小的子系统组成的结构

软件中的子系统具有以下特点:

① 结构稳定性 ②可扩展性 ③内聚性 ④可组合性 ⑤松耦性

四、目前在软件开发领域有两种主流的开发方法:结构化开发和面向对象开发

1、结构化开发是一种比较传统的开发方法,随着软件开发的逐步发展,面向对象的编程语言以及面向对象的设计理论应运而生,Java语言就是一种纯面向对象的编程语言

结构化开发简介:

结构化设计是属于自顶向下的设计。在进行结构化编程时,程序的主体是方法,方法是最小的功能模块。

举例说明结构化开发过程,图1-4显示了一个按照功能划分的画板panel系统的结构。

包括4个功能模块:选择形状模块、画长方形模块、画圆模块和画直线模块。图1-5为选择形状模块的数据流图

结构化开发弊端:

①自顶向下地按照功能来划分软件模块

②软件系统中最小的子系统是方法

2、面向对象软件开发方法简介

把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的对象能够组合成更复杂的子系统。

优点:

① 把软件系统看成是各种对象的集合,更接近人类的自然思维方式

② 系统结构稳定

③ 提高软件的可维护性、可重用性、可扩展性

五、对象模型

1、自底向上的抽象

2、自顶向下的分解

3、UML可视化建模语言

4、Rational Rose 可视化建模工具

六、面向对象开发中的核心思想和概念

问题领域、对象、属性、状态、行为、方法、实现

对象是对问题领域中事物的抽象。对象特征:

1.万物皆为对象

2.每个对象都是唯一的

3.对象具有属性和行为

4.对象具有状态

5.对象都属于某个类

七、类、类型

类是一组具有相同属性和行为的对象的抽象。类及类的关系构成了对象模型的主要内容

八、消息、服务

每个对象都具有特定的功能,相对于其他对象而言,它的功能就是为其他对象提供的服务。例如电视机具有的功能包括:开机、关机、选择频道、调节音量和播放VCD等。遥控器为了获得电视机的服务,需要向电视机提出获得特定服务的请求,提出请求的过程被称为发送消息

九、接口

在现实世界中,接口也是实体,比如电源插口、洗衣机上的按钮和电灯的开关。而在面向对象范畴中,接口是一个抽象的概念,是指系统对外提供的所有服务。

在Java语言中,接口有两种意思:

1、指系统对外提供的所有服务,在对象中表现为public类型的方法的声明

2、指用interface关键字定义的实实在在的接口,也称为接口类型。用于描述系统对外提供的所有服务,更加清晰地把系统的实现细节与接口分离

十、封装、透明

封装是指隐藏对象的属性和实现细节。

两个原则:

1、把尽可能多的东西藏起来,对外提供简捷的接口

2、把所有的属性藏起来

十一、抽象

抽象是一种由具体到抽象、由复杂到简洁的思维方式。在面向对象的开发过程中,抽象体现在以下方面

1、从问题领域的事物到软件模型中对象的抽象

2、从对象到类的抽象

3、从子类到父类的抽象

十二、继承、扩展、覆盖

在父类和子类之间同时存在着继承和扩展关系。子类继承了父类的属性和方法,同时,子类中还可以扩展出新的属性和方法,并且还可以覆盖父类中方法的实现方式。覆盖也是专业术语,是指在子类中重新实现父类中的方法。

注:

子类只能继承父类的部分属性和方法,父类中用private修饰的属性和方法对子类是透明的。

目前在Java领域比较流行的架构软件包括:

① J2EE

② Struts

③ JSF

④ Spring

十三、组合

组合是一种用多个简单子系统来组装出复杂系统的有效手段。个人计算机系统就是一个典型的组合系统。它由主机、键盘、鼠标、显示器、和外围设备打印机等组成。而主机由处理器、内存、一个或多个硬盘、显卡、网卡和声卡等组成。

十四、多态、动态绑定

十五、UML语言简介

十六、类之间的关系

十七、关联、依赖、聚集、泛化、实现

关联:指的是类之间的特定对应关系,在UML中用带实线的箭头表示

依赖:指的是类之间的调用关系

聚集:指的是整体与部分之间的关系

泛化:指的是类之间的继承关系

实现:指的是类与接口之间的关系

小结:

Java面向对象 第一章 面向对象开发方法概述的更多相关文章

  1. {java学习}[第一章]软件开发概述(2017.1.11).

  2. “全栈2019”Java多线程第一章:认识多线程

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  3. “全栈2019”Java异常第一章:什么是异常?

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  4. “全栈2019”Java第九十七章:在方法中访问局部内部类成员详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  5. Java面向对象编程 第一章 面向对象开发方法概述

    一.软件开发经历的生命周期: ①软件分析 ②软件设计 ③软件编码 ④ 软件测试 ⑤ 软件部署 ⑥软件维护 二.为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点: ① 可重用性 ...

  6. java 第六章 面向对象基础

    1.面向对象编程思想 面向过程编程 传统的C语言属于面向过程编程.面向过程解决问题的思路:通常是分析出解决问题所需要的步骤,然后用方法把这些步骤一步一步实现,最后一个一个依次调用方法来解决. 面向过程 ...

  7. java 第七章 面向对象高级特性

    一.类的继承 (一)继承的含义 1.在Java中定义一个类时,让该类通过关键字extends继承一个已有的类,这就是类的继承(泛化). 2.被继承的类称为父类(超类,基类),新的类称为子类(派生类). ...

  8. JAVA 入门第一章(语法基础)

    本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...

  9. Java OOP——第一章 对象和封装

    1.软件出现的目的: 用计算机的语言描述现实世界 用计算机解决现实世界的问题   ◆面向对象设计和开发程序的好处:    交流更加流畅    提高设计和开发效率 计算机语言的发展向接近人的思维方式演变 ...

随机推荐

  1. java使用正则从爬虫爬的txt文档中提取QQ邮箱

    我的需求是从一堆文档中提取出qq邮箱,写了这篇帖子,希望能帮助和我有一样需求的人,谢谢!...... import java.io.BufferedReader; import java.io.Fil ...

  2. Java--Jsp内置对象列表

  3. 关于java中接口定义常量和类定义常量的区别

    /** * * @author YZJ * @Description java中定义常量的最佳方法 */ public final class Contants{ /** * @Description ...

  4. 修改NavigationBarItem的字体大小和颜色的使用方法

    //创建一个左边按钮 UIBarButtonItem *leftButton = [[UIBarButtonItem alloc] initWithTitle:@"<" st ...

  5. SharePoint 2013 网站搜索规则的使用示例

    前言 SharePoint 2013搜索中,有一个非常好用的细化搜索结果的功能,就是“查询规则”.可以通过对于某些特定查询时,起到细化显示结果的作用.下面,我们简单的介绍一下该功能的使用和效果. 1. ...

  6. 好神奇的代码,可以让匿名用户对特定SharePoint 列表拥用添加列表项的权限哦

    如果你不使用代码,很难从界面上去设置列表的匿名用户(如果可以请告诉我,我会自动删除这个博文)拥有列表项的添加权限. 其实这种需求是非常必要的,比如: 1.允许新用户去提交一个注册申请, 2.在召集临时 ...

  7. OpenGL渲染流程

    一.什么是openGL OpenGL被定义为“图形硬件的一种软件接口”.从本质上说,它是一个3D图形和模型库,具有高度的可移植性,具有非常快的速度. 二.管线 管线这个术语描述了opengl渲染的整个 ...

  8. Android 手机卫士--自定义属性

    在前面的文章中,已经实现了“设置中心”第一栏的功能以及布局 本文地址:http://www.cnblogs.com/wuyudong/p/5936016.html,转载请注明出处. 自定义属性声明 接 ...

  9. Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for linked server "xxxxxxx".

    在SQL SERVER 2008 R2下用Windows 身份认证的登录名创建了一个访问ORACLE数据库的链接服务器xxxxx,测试成功,木有问题,但是其它登录名使用该链接服务器时,报如下错误: 消 ...

  10. MS SQL 错误:无法绑定由多个部分组成的标识符 "xxxxx"

    今天有个同事问我一个SQL问题,觉得有点意思,虽然能很快定位并解决问题,但是就是有种说不清道不明的感觉.因为不能解释清楚(很多是建立在假设上),顺便记录一下,希望有清楚原理的人能解答一二. 原SQL语 ...