对象和类简单理解:
真实存在的单个的个体都可以称作对象,
某些相似的对象可以归为一类,把他们共同的特点和行为抽出来,就是一个类。
在java中:
- 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
- 类:类是一个模板,它描述一类对象的行为和状态。
- 类中可以包含:
- 对象所共有的属性/特征-------------成员变量
- 对象所共有的行为------------------方法
- 一个类可以创建多个对象
同一类型所创建的对象,结构相同,数据不同
如何创建类?如何创建对象?如何访问成员?
- 创建类:
class Student{
String address;//属性
int age;
}
- 创建对象:
类(数据类型) 引用类型变量 指向 关键字 对象
Student name = new Student(); - 访问成员:
name.address ="china";
对象的内存图解
对象是一种引用数据变量,数组也是对象,
jvm存储数据是会把内存分块
栈内存:存储局部变量;
堆内存:存储对象,也就是所有new关键词创建的东西
看下图显示了声明一个数组和对象实例化时的内存操作。
- Student zz = new Student();
zz是局部变量,存在栈里,new之后在堆里开辟一块Student内存,里面存放对象的相关数据,然后把这块地址传递给zz。所以对象的变量也就是引用类型的变量里存的是地址,而不是具体内容。 - Student zzz = zz;
这句话是把zz的地址赋值给zzz,两个变量就指向了同一个对象所在的内存,当通过其中一个地址这个对象里的数据做改变时,另一个变量对应的值也会变。
例如:
zz.age = 10;
zzz.age = 20;
System.out.println(zz.age);//这里应该显示的是20,因为两个地址指向同一个内容,一个改变,另一个也会变






