面向对象(一)
1.构造方法
作用:对对象数据进行初始化,可以重载
特点:
- 方法名与类名相同(注意大小写要和类名一致)
- 没有返回值
- 没有void修饰
- 没有具体的返回值return
- 如果一个类没有提供任何构建方法,系统默认提供无参数构造方法
class Student{
public Student(){};//无参构造函数
public Student(int i,int y){} //有参构造函数,可以进行初始化
}
- 构造方法,最好自己手动写一个无参构造函数
2.this关键字
- 代表当前对象
- this可以调用构造函数
class Student{
private int i;
private String s;
public Student(){
this(2,"dd");
}
public Student(int i,String s)
{
this.i=i;
this.s=s;
}
}
- 可以调用一个类中的方法和变量
3.static关键字(public static void helloWorld() )
- 优点:不用创建对象
- static可以修饰变量(方法),被static修饰的变量叫做静态变量(静态方法),定义时最好能赋值
- 直接用类名进行引用,类名.方法(变量)
- 静态方法不能访问非静态方法和变量,静态方法不能使用this
- 开发时建议使用类名调用静态变量(方法),不建议使用实例化对象进行调用
程序运行时,静态变量存放在方法区里面,因此,静态变量在类加载时赋值,并且只赋值一次
- static可以定义静态语句块,静态语句块在类加载阶段执行,并且只执行一次,并且是从上而下进行顺序执行,在构造函数之前执行
-
class A{ static { System.out.println("ddd"); } static { System.out.println("aaa"); } public A(){ System.out.println("bbb"); } }