一.什么是类(call)?
定义:类是一个就像一个许愿的人,描述了需要东西,比如它的形状.大小.外貌(Java称为属性),和用处(Java中称为方法),这些都是抽象的概念。
例如:
什么是对象(object)?
定义:
"对象"像灯神阿拉丁,实现你描述的愿望。就像对象可以把类的属性方法进行实例化,把抽象的变为现实的。他根据类的创建,并具有它的所有的属性和方法。
代码:
二.类的格式
使用call的关键字定义后面接类名(ClassName) ,给类名时,(有几个重要的注意事项需要遵循,以确保代码的可读性、可维护性和遵循编程规范一般以大驼峰命名)类名后接
{
字段or成员变量 格式:(访问限定符+数据类型+变量名)
例如:public int age;
方法格式:(修饰符+修饰符+数据类型+方法名)
例如:public static void age(){
}
注意方法也是写在类里面
}
三.访问限定符
看到上面你可能会有疑惑public是啥?
public是访问限定符的一种一共有4种,他们用来限定你的访问权限.
protected:可以理解为你不想让所有人知道,又不想只有你家里人知道。
四.类的实例化
实例化就是把抽象的变为现实的,在堆上申请了一块内存空间,占用实际的物理空间,存储类成员变量
类的实例化需要new关键字配合使用
格式:类名 +对象名 = new 类名():
例:Cat Cat1 = new Cat();
五.类的初始化
说到类的初始化,不得不用到this关键字。
this用处是啥?
它的主要用处在于引用当前对象或当前函数的环境对象,使得开发者能够访问和修改该对象的属性或方法,或者在函数调用时保持上下文的一致性。
如图1
//使用构造函数进行进行赋值,使用this引用成员变量将局部变量赋值给成员变量
public Person(String name) {
this.name = name;
}
//使用this引用成员变量的属性get读取name的值
public String getName() {
return this.name;
}
图2
当实例变量和局部变量重名时,使用this来区分实例变量count和参数count
当我们知道this可以访问和修改该对象的属性和方法我们有两种方法进行初始化
1.构造方法
2.使用get和set
- 功能:
get
方法:用于读取对象的属性值。它不接受任何参数(除非是一个计算属性,该属性可能基于其他属性进行计算),并返回属性的当前值。set
方法:用于修改对象的属性值。它通常接受一个参数,即新值,并将该值赋给属性。在某些情况下,set
方法还可以包含额外的逻辑,例如数据验证、触发事件等。
- 用途:
get
方法:- 隐藏数据的内部表示和实现细节。
- 允许在返回属性值之前执行额外的逻辑,如计算或转换。
- 提供对只读属性的访问,而不允许修改。
set
方法:- 控制对对象状态的修改,确保数据的有效性和完整性。
- 允许在属性值改变时执行额外的逻辑,如通知监听器或更新关联属性。
- 实现私有属性的封装,防止外部直接访问和修改。
通过图中代码是构造方法和的使用get和set,发现,如果我们要初始化多个对象构造方法就显得很便捷,如果要修改单个成员变量使用set方便。所以初始化用构造方法,修改值用get和set.
快速生成构造快捷键
鼠标右击
get和set的快捷键
鼠标右击
步骤同上,第2步 点击Getter and Setter
六.默认初始化
为啥成员变量不用初始化就有值?
应为我们在实例化对象时系统为我们申请好了内存空间,申请好了内存空间也就赋好了值.
8大数据类型的默认值图我放在下面了