面向过程
主要是针对业务比较简单 或者说不经常升级早之类的项目 着眼于每个步骤之间的关系,每一步是如何去实现的
面向对象
主要针对 耦合度不强,经常会升级改造之类的项目,他强调的是谁能够完成这个功能,通常这个通能都是已经被实现好的,我们只需要拿过来使用就可以
在java中,面向对象里的对象是来自于类,类是我们对有一些共同属性和行为的事物的总结和提取 -> 类
类:是具有相同属性行为的事物的抽象表示
对象:是对类的具体的体现
如何定义类?
public class 类名{
//属性 -> 成员变量
//行为-> 成员方法
}
如何使用类?
我们定义类的目的就是为了创建该类的对象 访问对象的属性和方法
实例化对象 / 创建对象
类名 对象名 = new 类名();
如何访问对象的属性?
对象名.属性名;
如何访问对象的方法?
对象名.方法名();
面向对象三大特征:
封装
1:属性私有化 private修饰成员变量
2:对外提供公开public的get/set方法
get方法有返回 但是无参
set方法有参 但是无返回
继承
多态
this关键字
this是什么?
this是一个引用类型
他里面保存的是当前对象的内存地址 每一个new出来的对象都有this
this也可以用来区分同名的成员变量和局部变量
使用变量的原则: 就近原则
假如成员范围有一个a 局部范围有一个a 先使用局部范围的a 如果没有再去成员范围查找
如果要同时使用 并且要区分开来 就要使用this关键字
构造方法:
1:没有返回值 也不能写void
2:方法名 和类名相同
3:调用构造方法要使用new关键字
注意:如果我们定义类但是没有写构造方法 jvm会默认提供一个无参构造
建议我们在定义类的时候把有参无参构造都定义出来
构造方法是可以重载的
构造方法的作用就是:向虚拟机申请空间并且对空间中的属性值进行初始化
四斋蒸鹅心