关键词:
一、
01.软件开发经历周期:
- 软件分析:分析问题领域,了解客户的需求
- 软件设计:确定软件的总体结构,把整个软件系统划分为大大小小的多个子系统,设计每个子系统的具体结构
- 软件编码:用选定的编程语言来编写程序代码,实现在设计阶段勾画出来的软件蓝图
- 软件测试:测试软件是否能实现特定的功能,以及测试软件的运行性能
- 软件部署:为用户安装软件系统,帮助用户正确使用软件
- 软件维护:修复软件中已经存在的Bug,当用户需求发生变化时(增加新的功能,或者修改已有功能的实现方式),修改相应的软件部分
为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点:
- 可重用性
- 可扩展性
- 可维护性
02.Java语言的特点:面向对象、跨平台、直接支持分布式的网络应用、安全性和健壮性;简单性和高效性
03.可扩展性(Extensiblity)好
当软件必须增加新的功能时,能够在现有系统结构(系统由多个子系统构成,以及子系统由更多个更小的子系统组成的结构)的基础上,方便的创建新的子系统,这叫可扩展性好
二、结构化的软件开发方法简介
在进行结构化程序编程时,程序的主体是方法,方法是最小的功能模块,每个方法都是具有输入输出的子系统,方法的输入数据来自于方法参数,全局变量和常量,方法的输出数据包括方法返回值,以及指针类型的方法参数。一组相关的方法组合成打的功能模块。
#include<stdio.h> /**定义常量*/ #define circle 1 #define rectangle 2 #define line 3 /**画圆模块*/ void drawCircle(){...} //省略显示实现细节 /**画长方形模块*/ void drawRectangle(){...} //省略显示实现细节 /**画直线模块*/ void drawLine(){...} //省略显示实现细节 /**选择形状模块*/ void drawRectangle(){...} int shape; scanf("%d",&shape); //接收用户输入的形状 switch(shape){ case circle: drawShape(); break; case rectangle: drawRectangle(); break; case Line: drawLine(); break; default: printf("输入的形状不存在!") } } /**程序入口方法*/ void main(){ selectShape(); }
结构化开发弊端:
①自顶向下地按照功能来划分软件模块
②软件系统中最小的子系统是方法
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面向对象概述和三大特性
Java是面向对象的高级编程语言,类和对象是Java程序的构成核心。围绕着Java类和Java对象,有三大基本特性:封装是Java类的编写规范、继承是类与类之间联系的一种形式、而多态为系统组件或模块之间解耦提供了解决方... 查看详情
java面向对象概述和三大特性
Java是面向对象的高级编程语言,类和对象是Java程序的构成核心。围绕着Java类和Java对象,有三大基本特性:封装是Java类的编写规范、继承是类与类之间联系的一种形式、而多态为系统组件或模块之间解耦提供了解决方... 查看详情
面向对象编程原则(01)——概述
...ff1a;付政委《HeadFirst设计模式》作者:埃里克·弗里曼面向对象编程原则概述在软 查看详情
面向对象编程原则(01)——概述
...ff1a;付政委《HeadFirst设计模式》作者:埃里克·弗里曼面向对象编程原则概述在软 查看详情
java的概述常量变量
1.1java语言概述什么是java语言 Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程... 查看详情
java---面向对象基础
概述Java是一种面向对象的编程语言,面向对象编程,ObjectOrientedProgramming,简称OOP.和面向对象不同的是,面向过程编程,即将模型分解为一步一步的过程.比如要写一个TODOList,安装步骤一步一步来:读取文件;编写TODO;保存文件.面向对象编... 查看详情
面向对象相关概述
第一章面向对象概述一、结构化编程与面向对象编程的区别 在程序设计的早期,程序用流程图和自顶向下的方法设计。采用这种设计方法,程序员会将一个大的问题分解成更小的任务,然后为每个更小的任务编写一个过... 查看详情
面向对象的编程思想和java中类的概念与设计
面向对象的编程思想学习,面向对象内容的三条主线;1.java类及类的对象2.面向对象的三大特征3.其他关键字学习内容:3.1面向对象与面向过程面向对象与面向过程在应用上的区别Java中类的概念与设计类与类之间的关系面向对象的... 查看详情
java基础教程--概述
...Java语言??Java是于1996年由Sun公司发布的一种极富创造力的面向对象的程序设计语言。它不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为... 查看详情
一级目录
java语言概述与开发环境理解面向对象数据类型和运算符控制流程与数组面向对象(上)面向对象(下)java基础类库java集合泛型异常处理AWT编程Swing编程MySQL数据库与JDBC编程Annotation(注释)输入/输出多线程网络编程类加载机制... 查看详情
java基础---java语言概述
一、计算机编程的两种范型 1、面向过程的模型---具有线性执行特点,认为是代码作用于数据。 2、面向对象的模型---围绕它的数据(即对象)和为这个数据定义的接口来组织程序;实际上是用数据控制代码的访问二... 查看详情
面向对象的概述
...=======================================================================1:面向对象思想 面向对象是基于面向过程的编程思想。 面向过程:强调的是每一个功能的步骤,有很多很多方法组成,这些方法相互调用,完成需求。 面向... 查看详情
javase之类与对象(代码片段)
...必须要掌握类与对象,这样可以从深层次去理解java这种面向对象语言的开发理念,从而更好的掌握java编程思想与编程方式。OOP概述Java的编程语言是面向对象的,采用这种语言进行编程称为面向对象编程(Object-OrientedProgramming,OOP)... 查看详情
—初识java
---恢复内容开始---1.Java概述 java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对... 查看详情
1.java教程概述
....com/article/java/basic/Java教程概述.html1.Java教程概述基础课程面向无编程基础的读者.由浅入深介绍Java语言.①为什么会有这套课程网站起源②为什么要学Java可以通过java找到程序员的工作,升职加薪,赢取白富美走上人生巅峰.java是一个... 查看详情
面向对象编程
... -------JasperJohns概述在面向对象之前,先看一下面向过程编程和函数式编程面向过程编程面向过程编程最容易被初学者接受,它往往使用 查看详情
13.面向对象的概述
1、面向对象概述: (1)面向对象含:面向对象分析(OOA);面向对象设计(OOD);面向对象的编程(OOP); (2)通过面向对象的方式,将现实世界的事物抽象成对象,现实世界中的关系抽象成类、继承、封装、多态,... 查看详情
06.01_面向对象(面向对象思想概述)
###06.01_面向对象(面向对象思想概述)(了解)*A:面向过程思想概述 *第一步 *第二步*B:面向对象思想概述 *找对象(第一步,第二步)*C:举例 *买煎饼果子 *洗衣服*D:面向对象思想特点 *a:是一种更符合我们思想习惯的思想 *b:可以将复杂的... 查看详情