一个类可以被创建n个对象。如果n个对象中的某些数据需要共同使用,就需要使用
static关键字修饰这些数据。Java中,一般情况下调用类的成员都需要先创建类的对
象,然后通过对象进行调用。使用static关键字可以实现通过类名加“.”直接调用类的
成员,不需要创建类的对象。使用static修饰的属性和方法属于类,不属于具体的某
个对象。
1、static关键字修饰属性
2、static关键字修饰方法
下面详细讲解:
1、static关键字修饰属性
static修饰的属性称为静态变量,或者类变量,没有使用static修饰的属性称为实例变量
实例:
public class Person{
public String name;
public static int age;
public static void main(String[] args) {
Person lm=new Person();
lm.name="明";
Person.age=18;
}
}
实际开发中,static关键字修饰属性的最常用场景就是定义使用final关键字修饰的常量。使用final关键字修
饰常量在整个程序运行时都不能被改变,和具体的对象没有关系,因此使用static修饰,
如“static final int PERSON_LIVE=1”//人的生命只有一次;
注意:1、常量名一般由大写字母组成;
2、声明常量时一定要赋初值;
2、static关键字修饰方法
static修饰的方法称为静态方法或者类方法,不用static关键字修改的方法称为实例方法。
实例:
public class Person{
public String name;
public static int age;
public static void showDetails(String name ,int age){
System.out.println("姓名是"+name+",年龄是"+age);
}
public static void main(String[] args) {
Person lm=new Person();
lm.showDetails("明", 18);//用实例化类调用方法
Person.showDetails("明", 18);//或者:用类名直接调用静态方法
}
}
注意:1、在静态方法中不能直接访问实例变量和实例方法
2、在实例方法中可以直接调用类定义的静态变量和静态方法