this、static、block
1、this 属性名称
指的是访问类中的当前对象(new的对象),储存所有指向的对象的地址,用来区分成员变量和局部变量
构造器的首行调用本类中的其他构造器 ,this(参数列表)
public class This {
public static void main(String[] args) {
Dog dog = new Dog();
}
}
class Dog{
public String name;
//构造器
public Dog(){
System.out.println("空构造");
}
public Dog(String name){
this.name = name;
System.out.println("this地址" + this);
}
注意:
1.多个构造器之间不能相互调用,否则无法停止调用
2.在static修饰的内容中不能使用this
2、static
static是一个修饰符,用于修饰类的成员方法、类的成员变量。
成员变量中被static修饰的变量称为静态变量/类变量;不被static修饰的变量称为实例变量
成员方法中被static修饰的方法称为静态方法/类方法;不被static修饰的变量称为实列方法
static的应用场景
成员修饰符;
修饰变量;
修饰方法;
修饰块;
修饰类;
静态内容的使用:
1.跟随类名使用
类名.静态变量名
类名.静态方法名(参数列表);
2.跟随对象使用
引用.静态变量名
引用.静态方法名(参数列表);
3、block 块
作用域是以块为单位,即{}表示的范围。
局部代码块 /普通方法块
{}定义在方法中,跟随方法的调用而执行
构造块
{}定义在类中方法外,随new一起使用
静态块
static修饰{},定义在类中方法外 ,在类第一次加载完成之后执行
代码执行顺序:静态块–>main–>创建对象 --> 构造块 --> 构造器