1、理解类和对象
类:一类事物的抽象
对象:具体的某个事物
类通过实例化得到对象,一类对象抽象出一个类
类由属性和方法组成
例如:学生类Student
有属性:学号id;姓名name;班级className 等
有方法:学习study();走路walk() 等
具体的某个学生如张三就是一个对象,他有id为1;name为张三;className为2班;有study()和walk()方法
代码表现:
Student类:
Class Student{
//属性
int id;
String name;
String className;
//方法
public void study(){
system.out.println("学生有学习的方法");
}
public void walk(){
system.out.println("学生有走路的方法");
}
//无参构造器,创建对象时使用
public Student(){}
//有参构造器(构造方法),无返回值,方法名个类名相同;创建对象时使用
public Student(int id,String name,String className){
this id=id;
this name=name;
tihis className=className;
}
}
--------------------------------------------------------------------------------------------------------------------
Student的一个对象(实例)张三
使用无参构造器创建对象张三:
Student stu1=new Studnet();
stu1.id=1;
stu1.name="张三";
stu1.className="2班";
使用有参构造器器创对象张三:
Student stu2=new Student(1,"张三","2班");
注:这两个张三虽然属性都相同,但内存地址不同,不是同一个对象
Student stu=new Student(1,“zs”,“2班”);//new了一个Student类的对象,用引用stu指向对象的内存地址
java中的new对象其实就是在堆区开辟一块内存空间,引用指向的就是该内存空间的地址
2、基本类型的变量引用类型的变量
类的属性有被称为变量;变量分为基本类型的变量和引用类型的变量两大类
基本类型的变量,由基本数据类型byte、short、int、long、double、float、char、boolean修饰的变量
引用类型的变量,由引用数据类型类、接口、数组修饰的变量
例如:int id;就是一个基本类型的变量
String name;就是一个引用类型的变量,String是一个类
Student stu;也是引用类型的变量,表示Student类型的变量
3、实例变量和局部变量
根据变量在类中的位置分为实例变量和局部变量
1)实例变量(又称为属性、全局变量、成员变量)
声明位置:定义在类中,方法外
默认值:使用时可以赋值也可以不赋值,实例变量有默认值
作用范围:实例变量在类的所有方法中都能使用
生命周期:对象创建直至被gc回收
2)局部变量
声明位置:定义在方法中,代码块,参数类别
默认值:使用时必须赋值,局部变量没有默认值
作用范围:从变量声明开始,到这个变量最近的一对大括号内使用
生命周期:从变量声明开始,到这个变量最近的一对大括号内