关键字:static

关键字:static

  • 在Java语言中,static表示“静态”的意思,使用场景可以用来修饰成员变量和成员方法,当然也可以是静态代码块。static的主要作用在于创建独立于具体对象的域变量或者方法。
  • 在Java语言中,static主要有四种使用情况:成员变量、成员方法、代码块和内部类
即使没有创建对象,也能使用属性和调用方法,static目的就是在于解决这个问题

例如所有的中国人都有个国家名称,每一个中国人都共享这个国家名称,不必在每一个中国人的实例对象中都单独分配一个用于代表国家名称的变量

  • 代码示例:
class Circle{ 
    private double radius; 
    public Circle(double radius){
        this.radius=radius;
    } 
    public double findArea(){
        return Math.PI*radius*radius;
    }
}

然后创建两个Circle对象

Circle c1=new Circle(2.0); //c1.radius=2.0 
Circle c2=new Circle(3.0); //c2.radius=3.0
  • Circle类中的变量radius是一个实例变量(instance variable),它属于类的每一个对象,不能被同一个类的不同对象所共享。
  • 上例中c1的radius独立于c2的radius,存储在不同的空间。c1中的radius 变化不会影响c2的radius,反之亦然。
使用范围:

在Java类中,可用static修饰属性、方法、代码块、内部类

被修饰后的成员具备以下特点:
  1. 随着类的加载而加载
  2. 优先于对象存在
  3. 修饰的成员,被所有对象所共享
  4. 访问权限允许时,可不创建对象,直接被类调用
class Circle { 
    private double radius; 
    public static String name = "这是一个圆"; 
    public static String getName() { 
        return name; 
    } 
    public Circle(double radius) { 
        this.radius = radius; 
    } 
    public double findArea() { 
        return Math.PI * radius * radius; 
    } 
    public void display() { 
       System.out.println("name:" + name + "radius:" + radius); 
    } 
}

public class StaticTest { 
    public static void main(String[] args) { 
        Circle c1 = new Circle(2.0); 
        Circle c2 = new Circle(3.0); 
        c1.display(); 
        c2.display(); 
    } 
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值