package day07;
/*
* static (静态修饰符)
* 1. static 修饰成员变量 : 如果数据需要共享,用static修饰。
* 静态成员变量的访问方式:
* 1. 对象名.变量名
*
* 2. 类名.变量名
* 注意:
* 1.非静态成员变量只能使用对象访问,不能使用类名进行访问
* 2.千万不要为了方便访问数据而使用static修饰成员变量,只有成员变量的数据是真正需要被共享的时候才使用static修饰
*
*
* static 修饰成员变量的应用场景:如果一个数据需要被所有对象共享使用的时候,这时即可使用static修饰
*
* 2. static 修饰成员函数(静态成员方法)
* 访问方式:
* 方式1:可以使用对象进行访问
* 对象名.变量名
*
* 方式2:可以使用类名进行访问
* 类名.变量名
*
* 推荐使用类名进行访问,可以节省内存空间。书写会更加简便。
*
* 注意:
* 1.静态函数可以使用类名或者对象名访问,非静态只能用对象名进行访问。
* 2.静态函数可以直接访问静态的成员,但是不能直接访问非静态成员(含函数与变量)。
* 3.非静态函数可以访问静态与非静态成员。
* 4.静态函数不能出现this或者super关键字。
* 原因:静态的函数是可以使用类名调用的,一旦使用类名调用,这时候不存在对象,而this关键字是代表了一个函数的调用者
* 对象,这时产生了冲突。
*/
class Emp{
static int counter = 0;
String name;
static{
System.out.println("静态代码块执行了...");
}
{
counter++;
}
public Emp(String name){
this.name = name;
}
public static void show(){
System.out.println("有"+Emp.counter+"位访客");
}
}
public class Demo10 {
public static void main(String[] args) {
new Emp("1");
new Emp("2");
new Emp("3");
new Emp("4");
new Emp("5");
Emp.show();
}
}
重拾JAVA基础06——static关键字
最新推荐文章于 2023-02-24 13:41:36 发布