对象与类
什么是对象呢?
万物都是对象,一切客观存在的事物都是对象。
什么是类呢?
类是对现实生活中一类具有共同属性和行为的事物的抽象。
类用于定义对象的属性(成员变量)和行为(成员方法),它是创建对象的基础。
类的特点:
- 类是对象的数据类型。
- 类是具有相同属性和行为的一组对象的集合。
那什么是对象的属性呢?
属性:对象具有的各个特征,每个对象的每个属性都具有特定的值。
例如:对于手机,它的属性有品牌,价格,内存,每个属性又拥有特定的值。
那什么叫对象的行为呢?
行为:对象能够执行的操作。
例如:打电话和发微信就是手机的行为。
那类和对象有什么关系呢?
类在现实生活中是不存在的,是抽象的,而对象是看得见摸得着的实体,所以可以说对象是将类实体化的产物。
举个栗子:
类是手机,我们都知道手机有品牌,价格,这是手机的属性,而手机可以用来打电话,发短信,这就是手机的行为,但是用类来说明太抽象了,我们就用小米,红米,华为这一些手机来具体,这就是对象。
类的定义
类的组成
- 属性:在类中通过成员变量来体现(类中方法外的变量)
- 行为:在类中通过成员方法来体现(与前面的方法相比去掉static关键字即可)
类的定义步骤
- 定义类
- 编写类的成员变量
- 编写类的成员方法
访问修饰符 class 类名 {
// 成员变量(属性)
访问修饰符 数据类型 变量名1;
访问修饰符 数据类型 变量名2;
// ...
// 构造方法
访问修饰符 类名(参数列表) {
// 构造方法的初始化代码
}
// 成员方法(行为)
访问修饰符 返回类型 方法名1(参数列表) {
// 方法的代码块
}
访问修饰符 返回类型 方法名2(参数列表) {
// 方法的代码块
}
// ...
}
上述代码片段中的关键要素包括:
-
访问修饰符(Access Modifier):用于控制其他类对该类的访问级别。常用的访问修饰符包括public(公开访问)、private(私有访问)、protected(受保护访问)和不加修饰符(默认访问级别)。
-
类名:定义类的名称,按照Java的命名规则,类名应该首字母大写。
-
成员变量(属性):描述类的特征或状态,即类的数据成员。成员变量可通过访问修饰符指定其访问级别,然后是数据类型和变量名。
-
构造方法:构造方法用于创建对象并初始化对象的状态。构造方法的名称与类名相同,没有返回类型。可以有零个或多个参数,通过参数列表指定。
-
成员方法(行为):描述类的行为或操作,即类的成员方法。成员方法也可以通过访问修饰符指定其访问级别,然后是返回类型、方法名和参数列表。
通过定义类,我们可以创建该类的对象并访问对象的属性和方法。例如,定义了一个名为Car的类,可以创建Car对象,并使用点运算符(.)访问对象的属性和方法,如car.brand和car.startEngine()。
注意
一个Java源文件中可以定义多个类,但只能有一个公开类(public class),且公开类的类名必须与文件名相同。非公开类可以被其他类使用,但无法从外部访问。
对象的使用
创建对象
- 格式:类名 对象名=new 类名();
- 范例:Phone p=new Phone();
使用对象
- 使用成员变量
- 格式:对象名 变量名
- 范例:p brand
- 使用成员方法
- 格式:对象名.方法名()
- 范例:p.call()
对象内存图
输出完毕就会从栈内存中消失
执行完main方法在栈内存中消失