面向对象 【重点】
Java是一门面向对象的编程语言
程序:计算机指令集合 为了解决现实生活中遇到问题
-
对象
现实生活中存在的事物的模拟、抽象 一切皆对象
对象一定具有它的特征[有什么] 和 行为[能干什么]
面向过程:编程思想 将大问题细化为若干小问题,再进行细化,直到可以通过代码实现为准
面向对象:编程思想 将现实生活存在的事物模拟成对象,通过对象与对象之间的配合完成功能
-
类
- 类是代码的容器 【面相对象】
- 一组相同或者相近对象的共性的抽象,保留局部有用部分。
- 类的组成:属性[具有的特征]、方法[具有的行为]
属性:又称 成员变量 定义在类以内,函数以外
方法:定义在类以内,其他方法以外
访问修饰符 返回值类型 方法名 参数表 方法体;
public void sleep(){ //方法体执行的内容 }
- 方法重载
概念:方法名相同,参数列表不同[数量、类型、顺序不同都算不同] 与访问修饰符和返回值无关
好处:在调用方法时根据不同的参数自动调用对应的功能 方法调用更加简单、灵活
- 对象和类的关系
类是对象的模版
对象是类的实例
-
对象
使用时需要先创建对象
类型 引用名 = new 类型();
操作属性:引用名.属性名 = 值 ; //为对应对象的属性赋值
引用名.属性名 //获取对应对象的属性值
操作方法:
引用名.方法名()
-
构造方法
概念:构建对象时自动使用的方法
特点:
- 没有返回值类型
- 方法名和类名完全相同
- 构造方法不能通过句点手工调用,会在创建对象时自动调用
注意:
- 类中如果没有声明构造方法,则编译器默认提供一个无参构造
- 如果声明构造方法后,无参构造则不再默认提供
- 构造方法会在创建对象时自动调用
- 构造方法支持方法重载
- 可以通过有参构造在创建对象的同时为对象赋予初始值
- 有参构造作用:在创建对象的同时为成员变量赋值
-
this
this表示当前对象、实例
this.属性名 表示调用当前实例的属性
this.方法名() 表示调用当前实体的方法
this() 表示调用当前类的其他构造方法
this(参数) 表示调用当前类其他的有参构造
注意:在成员变量和局部变量重名时,想要使用成员变量,需要在前边加this.
this()|this(参数) 调用本类其他构造方法时 需要保证此代码在当前构造方法有效代码的第一行