黑马程序员_学习笔记第5天——面向对象

时间:2021-07-17 00:27:26
---------------------- ASP.Net+Android+IOS开发href="http://edu.csdn.net"target="blank">.Net培训、期待与您交流! ----------------------

1、面向对象

1)三个特征:封装、继承、多态

2)开发:就是找对象→创建一 个对象→使用对象→维护对象的关系

3)类和对象的关系:

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

对象:就是这类事物,实实在在的个体,通过new操作符所产生的实体在堆内存中

4)属性对应是类中的变量,行为对应类中的函数(方法)

定义类就是在描述事物,就是在定义属性和行为,属性和行为共同成为类中的成员(成员变量,成员方法)

2、类类型变量指向对象

3、成员变量和局部变量

1)成员变量作用域整个类中

局部变量作用于函数中,或者语句中

2)成员变量在堆内存中,因为对象的存在,才在内存中存在

局部变量存在栈内存中

4、匿名对象使用方式

1)当对对象的方法只调用一次时,可以用匿名对象来完成,这样写比较简化,如果对一个对象进行多个成员调用,必须给对象起名

2)可以将匿名对象作为实际参数进行传递

5、封装(Encapsulation)

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

2)好处:

将变化隔离、便于使用、提高重用性、提高安全性

3)封装原则:

将不需要对外提供的内容都隐藏起来

把属性都隐藏,提供公共方法对其访问

6、private私有,权限修饰符,用于修饰类中的成员(成员变量、成员函数)

只在本类中有效,私有仅是封装的一种,权限最小

7、一个成员变量通常有两种访问方式

设置set   获取get

之所以对外提供访问方式,就因为可以在访问方式中加入逻辑判断等语句,对访问的数据进行操作,提高代码的健壮性

8、构造函数

1)特点:函数名与类名相同;不用定义返回值类型;不可以写return语句

2)作用:给对象进行初始化。对象一建立就会调用与之对应的构造函数

3)当一个类中没用定义构造函数时,那么系统会默认给该类加入一个空参数构造函数

当类中自定义了构造函数后,默认的构造函数就没有了

4)构造函数与一般函数区别

A、写法不同

B、运行上不同:构造函数是在对象一建立就运行,给对象初始化

一般函数是对象调用才执行,给对象添加对象具备的功能

C、一个对象建立,构造函数只运行一次

而一般函数可以被该对象调用多次

5)什么时候定义构造函数?

当分析事物时,该事物存在具备一些特性或者行为,那么将这些内容定义在构造函数中

6)构造代码块

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

定义的是不同对象共性的初始化内容

7)this,代表本类的对象  区*部变量和成员变量重名

哪个对象在调用this所在的函数,this就代表哪个对象

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

但凡本类功能内部使用了本类对象,都用this表示

8)this语句:用于构造函数间进行互相调用

this语句只能定义在构造函数的第一行,因为初始化要先执行


---------------------- ASP.Net+Android+IOS开发href="http://edu.csdn.net"target="blank">.Net培训、期待与您交流! ----------------------详细请查看: http://edu.csdn.net