- 什么是类?什么是对象?
类:类通俗的来说是创建对象的模版也可以理解为类是对象的抽象,它是用于描述一组对象的共同特征和行为,类中可以定义成员变量和成员方法。其中成员变量用于描述对象的特征,成员变量也被称为属性;成员方法用于描述对象的行为,可简称为方法。
在我看来,java中的类与c中的结构体十分相似不过相较于c,java可以在类中定义成员函数和构造函数即方法,因此就可以做到对成员变量的操作,而c做不到这点,但是c++可以做到。
注意:类需要定义在公共类的外面,java规定public修饰的类只能有一个。
其中Person是类名,age为属性或者成员变量,speak()为成员方法。
对象:对象是类的一个实例,我们可以通过定义类而实现对象的创建。
- 如何创建对象并使用它
创建对象与定义变量类似,都需要对其进行类型的声明,并且需要进行初始化所以需要使用new来来申请堆内存中的空间。
例如:Person p1 = new Person();
p1通过声明在栈内存中申请空间,而通过new使Person()申请了堆内存的空间,并且通过”=”
p1便指向了Person()所处的堆内存中的空间。
对象的使用:以下面代码为例
定义了p1,p2两个对象,此处我们对p1中的成员变量赋予初值,不做更改。因为Person类中已存在对age输出的方法所以此处我们并不需要对age进行重复输出。
根据输出结果我们可以发现类中的成员变量不赋初值,其初始值默认为0;
- 简述this关键字的应用
this大致有三种常见用法:
- :通过this关键字可以明确地去访问一个类中的成员变量,并解决与局部变量名称冲突的问题。
- :通过this关键字调用成员方法。
- :调用无参的构造方法。
输出结果为: