4.面向对象

来源:互联网 发布:页游 知乎 编辑:程序博客网 时间:2024/05/17 03:29

将功能封装进对象,强调了具备了功能的对象


eg1:将大象塞进冰箱:

面向对象思想:

我--指挥--冰箱;

冰箱:打开

冰箱:存储

冰箱:关闭

(功能)

面向过程思想:

我打开冰箱,大象存储进冰箱,关闭冰箱(动作)

---------------------------------------------------------------------------------------

eg2:

软件公司招聘你去干活:为了提高工作效率

老板(对象)--指挥你(对象)干活

-------------------------------------------------------------------------------------


从例子理解什么是面向对象:

①面向对象的特点:复杂的问题简单化,能使角色转变{执行者->指挥者}

②举例:(结合生活)

面向对象思考方式思考问题,公司招人需求,提高发展

你需要找一些具备编程经验的人帮公司完成工作

我就是那个对象,我是具备专业编程功能的人

你指挥我在做事

你在使用的我专业编程功能为公司解决事情

-------------------------------------------------------------------------------------

类与对象的关系

名词提炼法

人开门:门{开(){操作门}}人{开门(门){门.开()}}


面向对象三大特征:封装,继承,多态

开发:其实就是找对象使用,没有对象就创建对象

重点:找对象,建立对象,使用对象,维护对象的关系。


类和对象的关系:

类:对现实生活中事物的描述

对象:这类事物存在的个体

描述:提取对象中共性内容,对具体的抽象

共性:姓名,年龄,性别,学习java功能之类

该对象通过new产生的实体,在堆内存中

映射到java中,描述就是class定义的类,具体对象就是对应java在堆内存中用new建立的实体

Car c =new Car();

-------------------------------------------------------------------------------------

匿名对象:

new Car().num=5;①

new Car().color="blue";②

new Car().run();③

说明:默认num=4;color="yellow"

当调用②时,①成了垃圾,而③仍有意义

由此可知,匿名对象的使用方式:对象方法只调用一次,且作为实参传递

-----------------------------------------------------------------------------------------------------

封装:

隐藏对象的属性和实现的细节,仅对外提供公共访问方式

好处:

将变化隔离

便于使用

提高代码重用性

提高安全性

原则:把不需要对外提供的内容隐藏,把属性隐藏,提供公共方法对其访问


注意:私有仅仅是封装的一种表现形式,对访问的数据进行操作,提高代码健壮性


----------------------------------------------

构造代码块:

创建方法

class{

Syetem.out.println();

}

作用:给对象进行初始化,对象一建立就运行,优先于构造函数执行


构造代码块是给所有对象进行统一初始化

构造函数是给对应的对象初始化


重点:把构造函数初始化,相应的对象无法创建


-----------------------------------------------------------

this:

特点:就代表本类的对象

this代表它所在函数所属对象的引用


应用:当定义类中功能时,该函数内部要用到调用该函数的对象时,这时使用this来表示这个对象,但凡本类功能内部使用了本类对象,都用this表示


一个类中可有多个构造函数,this()语句用于构造函数之间进行互相调用//this(name)

(要定义在构造函数第一行)


0 0
原创粉丝点击