类变量与类方法
类变量(静态变量)
static,被所有类的对象共享的变量(放在堆中)
public(private) static int count;
class Chile {
private String name;
public static int count=0;
}
- 静态变量被同一个类的所有对象共享
- JDK 8以前在方法区,JDK8(包括8)以后在堆里
- static类变量,在类加载的时候生成(没有创建实例也生成)
如何访问类变量
类名.类变量名(推荐) child.count
或者 对象名.类变量名 child1.count
类方法
- 类方法也叫静态方法。形式如下:
访问修饰符 static 数据返回类型 方法名()){}【推荐】
static 访问修饰符 数据返回 类型方法名(){} - 类方法调用:
使用方式:类名.类方法名 或者 对象名.类方法名【前提是满足访问修饰符的访问权限和范围】
静态方法只能调用静态成员,普通方法可以调用任意成员
class Stu{
private String name;
//定义一个静态变量
private static double fee=0;
public Stu(String name){
this.name=name;
}
//1. 当方法使用static修饰后,方法就是静态变量
//2. 静态方法可以访问(私有的)静态属性/变量
public static void payFee(double fee) {
Stu.fee+=fee;
}
}