目录
1、概述
面向过程OPP:Procedure Oriented Programming
面向对象OOP:Object Oriented Programming
- 降低了耦合性提高了可维护性
- 面向过程是具体化的,流程化的:解决一个问题,你需要一步一步的分析,一步一步的实现。
- 面向对象是模型化的:不必去一步一步的实现,至于这个功能是如何实现的,管我们什么事?
- 优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护。
2、基本特征
面向对象语言都有这三大特征
- 封装 :将功能封装成一个个独立的单元,减小耦合,避免牵一发而动全身,方便对程序的修改。
- 继承:代码重用,减少编码量,间接减少维护成本。
- 多态:不同的场合做出不同相应。
3、类和对象
1、类和对象的关系
类是对象的抽象,对象是类的实例
- 类: 就是一个模板,是一类对象的模板,它描述一类对象的行为和状态,定义了这些对象应该有的属性及方法。
- 对象: 万物皆对象。具体某一辆车就一个对象,车有轮胎,颜色等属性,有开车的行为,对象是类的具体体现。对象实质是:属性(成员变量)+行为(方法或者函数)。
2、生活中描述事物无非就是描述事物的属性和行为。
- 属性:对应类中的成员变量。轮胎,颜色
- 行为:对应类中的成员函数(方法)。开车的行为
4、java类的基本结构:属性、方法、构造方法、内部类、代码块
5、类:类就是一个模板,定义多个对象共同的属性和方法
6、属性
属性即对象应有的数据
属性又称为成员变量,是声明在类中的变量,在方法体中声明的变量称为局部变量或临时变量
7、new对象作用:要想访问一个类中的非私有成员,必须要先创建该类对象,通过对象名来访问。
8、访问类的属性:对象名.属性 调用类的方法:对象名.方法名(实参列表)
9、成员变量和临时变量
-
成员变量:
堆内存,声明在类体内,方法外;
可以在声明时赋值或者构造方法赋值,若不赋值,会有默认的初始值;
作用域:整个类都可以使用。
-
临时变量:
栈内存, 方法内,包括方法的参数;
声明和赋值之后才能使用,否则编译就会报错;
作用域:找括号(变量声明在哪对{}里,那么它就在哪对{}内生效),出了括号就不认识了。