4.1 类和对象
4.1.1类和对象的关系
什么是类
- 类是一种相关属性和行为的集合,可以看成是一类事务的模板,使用事物的属性特征和行为特征来描述该类事物
什么是对象:
-
对象是一类事物的具体表现,对象是类的一个实例,必然具备该类事物的属性和行为。
-
类是对一类事物的描述,是抽象的。
-
对象是一类事物的实例,是具体的。
- 类是对象的模板,对象是类的实例。 -
面向过程:当需要实现一个功能的时候,每一个具体步骤都需要亲力亲为,详细处理每一个细节
-
面向对象:当需要实现一个功能的时候,不关心具体步骤,只需要找一个具有该功能的人帮我做
面向过程是强调步骤,面向对象是强调对象,Java是一种面向对象的语言
面向对象的三大特征:封装、继承、多态
4.1.2类的定义
现实世界的一类事物:
- 属性:事物的状态信息
- 行为:事物能够做什么
对应到Java中是一样的道理 - 成员变量:对应事物的属性。
- 成员方法:对应事物的行为。
类的定义格式:
public class Student {
//成员变量:对应事物的属性
//成员方法:对应事物的行为
}
4.1.3对象的创建及其使用
通常情况下,一个类并不能直接被使用 ,需要根据类创建一个方法,才能使用。
1.导包:就是指明需要什么类在什么位置,告诉程序在哪个包里导出你需要的东西
格式:import 包名称.类名称;
例如:import cn.incast.day06.Student;
若需要导入的东西和当前类属于同一个包下则不用写
2.创建格式:类名称 对象名 = new 类名称();
例如:Student stu = new Student;
3.使用,分两种情况:
使用成员变量:对象名.方法名
使用成员方法:对象名.成员方法名(参数)
public class Student {
String name;
int age;
public void eat() {
System.out.println("吃饭");
}
public void sleep() {
System.out.println("睡觉");
}
public static void main(String[] args) {
System.out.println("学习");
}
}
/**
* 新建一个Student01类代表Student类的实例
*/
class Student01 {
public static void main(String[] args) {
//创建一个名为stu的对象
Student stu = new Student();
stu.age = 18;
stu.name = "王权";
//使用其中的成员变量已经成员方法
System.out.println("我的年龄是" + stu.age);
System.out.println("我的名字是" + stu.name);
stu.eat();
stu.sleep();
}
}
4.1.4 对象的this引用
当方法的局部变量和类的成员变量重名的时候,根据就近原则,优先使用局部变量,如果需要访问本类当中的成员变量时,需要使用this,格式:this.成员变量名
通过谁调用的方法,谁就是this。
/**
* this的调用
*
* @author wangquan 1126909120@qq.com
* @cr