面向对象和面向过程
1. 面向过程
- 当须要实现一个性能的时候,每一个具体的步骤都要亲力亲为,具体解决每一个细节。
2. 面向对象
- 当须要实现一个性能的时候,不关怀具体的步骤,而是找一个曾经具备该性能的人来帮忙做。
- 特点:面向对象思维是一种更合乎咱们思考习惯的思维,它能够将简单的事件简单化,并将咱们以执行者变成了指挥者。面向对象的语言中,蕴含了三大基本特征:封装、继承、多态。
类和对象
类
- 类:是一组相干属性和行为的汇合。能够看成是一类事务的模板。应用事物属性特色和行为来形容该类事物。
- 属性:就是该事物的状态信息。
- 行为:就是该事物可能做什么。
类与对象的关系
- 类是对一类事物的形容,是形象的。
- 对象是一类事物的实例,是具体的。
- 类是对象的模板,对象是类的实体。
类的定义
事物与类的比照
- 属性:事物的状态信息。
- 行为:事物可能做什么。
java 中用.class 形容事物
- 成员变量:对应事物的属性。
- 成员办法:对应事物的行为。
注意事项
- 成员变量是间接定义在类当中的,在办法外边。
- 成员办法不要写 static 关键字。
通常状况下,一个类并不能间接应用,须要依据类创立一个对象,能力应用。
- 寻包:也就是指出须要应用的类,在什么地位。对于和以后类属于同一个包的状况,能够省略导包语句不写。
import 包名称. 类名称; - 创立:格局
类名称 对象名 = new 类名称();
Student stu = new Student(); -
应用:分两种状况
- 应用成员变量 对象名. 成员变量名
- 应用成员办法 对象名. 成员办法名(参数)
注意事项
- 如果成员变量没有进行赋值,那么将会有一个默认值,规定和数组一样。当一个对象作为参数,传递到办法当中时,实际上传递去的是对象的地址值。当应用一个对象类型作为办法的返回值时,返回值其实就是对象的地址值。
局部变量和成员变量
-
定义的地位不一样(重点)
- 局部变量:在办法的外部
- 成员变量:在办法的内部,间接写类当中。
-
作用范畴不一样(重点)
- 局部变量:只有办法当中才能够应用,出了办法就不能再用了。
- 成员变量:整个类全副能够通用。
-
默认值不一样(重点)
- 局部变量:没有默认值,如果想应用,必须手动进行赋值。
- 成员变量:如果没有赋值,默认会有默认值,规定和数组一样。
- 办法的参数是局部变量。参数在办法调用时必然会被赋值的。
-
内存的地位不一样
- 局部变量:位于栈内存。
- 成员变量:位于堆内存。
-
生命周期不一样
- 局部变量:随着办法进栈而诞生,随着办法出栈而隐没。
- 成员变量:随着对象创立而诞生,随着对象被垃圾回收而隐没。