2019-01-02
学生类(特征:状态+行为):属性
public class student{
类体=属性+方法
属性;存储数据采用变量的形式
实例变量:学生信息不能通过类去直接访问,需要一个成员变量
对象被称为实例,实例变量又被称为对象变量
int no;
必须创建对象no的内存空间才会创建
String name;
int age;
boolean sex;
String addr;
}
new作用:创建对象在jvm堆内存中开辟新的内存空间
方法区内存:在类加载时class字节码代码片段被加载到该空间中
栈内存:方法代码片段执行时会给该方法分配内存空间,在栈内存中压栈
堆内存:new的对象在堆内存中存储
数据类型 默认值
----------------------------
byte、short、int、long 0
float、double 0.0
boolean false
char \u0000
引用数据类型 null空
Student s = new Student();
s:引用,通过引用去访问堆内存中对象内部的实例变量
int stuNo = s.no;
String stuName = s.name;
boolean stuSex = s.sex;
String stuAddr = s.addr;
读取数据:s(引用).变量名
修改:s(引用).变量名 = 值
再通过一个类实例化一个全新的对象
student stu = new student();
局部变量在栈中储存
成员变量中实例变量在堆内存Java对象内部储存
实例变量是1对1的
System.out.println(student.no);(编译报错)no是实例变量不可以直接采用类名的方式访问,必须通过对象访问