35、面向对象【java语言的核心机制,最重要的内容】
*面向过程和面向对象的区别
-面向过程:主要关注点是 实现的具体过程,因果关系【集成显卡的开发思路】
*优点:对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低。
*缺点:采用面向过程的方式开发很难解决非常复杂的业务逻辑,整个系统受到
影响,导致最终的软件“扩展力”差,另外,由于没有独立体的概念,所以无法达到
组件复用。
-面向对象:主要关注点是:主要关注对象【独立体】能完成哪些功能【独立显卡的开发思路】
*优点:耦合度低,扩展力强,更容易解决现实世界当中更复杂的业务逻辑,组件复用性强。
*缺点:前期投入成本较高,需要进行独立体的抽取,大量的系统分析与设计。
-C语言是纯面向过程的,C++是半面向对象,Java纯面向对象
-现在出现的一些新的编程语言多数都是面向对象的,人在认识现实世界的时候是以面向对象的
的方式。面向对象更符合人的思维方式。
*面向对象的三大特征
-封装
-继承
-多态
所有面向对象的编程语言都有这三大特征,生命周期当中:【整个生命周期中贯穿使用OO面向对象方式】
*面向对象的分析(OOA)
*面向对象的设计(OOD)
*面向对象的编程(OOP)——java是纯面向对象语言
*类和对象的概念
*什么是类?
-类在现实世界是不存在的,是一个模板,是一个概念,是人类大脑抽象思考的结果。
类代表了一类事物
-在现实世界当中,对象A与对象B之间具有共同特征,进行抽象总结出一个模板,这个模板被称为类。
*什么是对象?
-对象是真实存在的个体,现实世界当中实际存在。
–
*描述一下整个软件开发的过程:
-程序员先观察现实世界,从现实世界当中寻找对象
-寻找了n多个对象之后,发现所有的对象都有共同特征
-程序员在大脑中形成了一个模板【类】
-Java程序员可以通过java代码来表述一个类
-然后通过类就可以创建对象
-有了对象之后,可以让对象直接协作起来形成一个系统。
*类–>【实例化】–>对象
-对象又被称为实例(instance)
*对象–>【抽象】–>类
*重点:
-类描述的是对象的共同特征
-共同特征例如:身高特征
-这个身高特征在访问的时候,必须先创建对象,通过对象去访问这个特征。
-因为这个特征具体到某个对象上之后,值不同,有的对象身高1.80,有的对象身高1
身高2.8。
-一个类主要描述什么信息呢?
一个类主要描述的是状态+动作。
状态信息:名字、身高、性别、年龄
动作信息:吃、唱歌、跳舞、学习
状态–>一个类的属性
动作–>一个类的方法
– 类{
属性://描述对象的状态信息(一般定义变量来表示属性)
方法://描述对象的动作信息
}
注意:状态和动作当具体到某个对象上之后,发现最终的结果可能不一样。
对象和对象之间有共同特征,但是具体到对象之后有数据的差异。
*类的定义【从这里开始编写代码】
语法结构:
[修饰符列表] class 类名 {
}
学生类,描述所有学生对象的共同特征:
学生对象有哪些状态信息:
*学 【int】
*名字【String】
*性别【boolean】
*年龄【int】 【年龄是一个属性,年龄是一个数据,是数据就应该有数据类型】
*住址【String】
…..
学生对象有哪些动作信息:
*吃饭
*睡觉
*学习
*玩
*唱歌
*跳舞
…..
重点:属性通常是采用一个变量的形式来完成定义的。
例如:
int no;
int age;
*引用数据类型
String.class SUN提供的
System.class SUN提供的
Student.class 程序员自定义的
User.class 程序员自定义的
Product.class 程序员自定义的
Customer.class 程序员自定义的
………
*Java中所有的类(class)都属于引用数据类型
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!