java类中的static

一,static静态域

        如果将一个域定义为static,那么这个类是静态域,每个类只有一个静态域;每个实例化的对象都有对此实例域的引用,而每一个实例化的对象对于所有实例域都有自己的一份拷贝。

public    class    Demo{


        private    String    name;

        private    String    floorboard;


         ..........................


}

     1,像name对于每个实例化的对象来说都有一份对name的拷贝。每个实例化对象都有自己的name.

     2,floorboard对于每个实例化对象来说,都有一份自己的引用。及时没有实例化对象,floorboard也存在,它属于类,不属于任何独立的对象。

二,静态常量

     1,静态常量只能使用类名直接调用这个常量。例如:Demo.floorboard.

      2,一个实例域的调用要通过创建对象来调用。比如:先创建Demo的对象Test1,然后用Test1.name.

三,静态方法

      静态方法不能想对象进对对象进项操作,它也没有隐式参数,所以静态方法没有this方法,静态方法也不能操作实例域。

public class a{
    static int a = 5;
    int b = 10;
    public static void main(String[] args){
        System.out.println(a);
        System.out.println(b);
        
    }
}

   在上面main方法中因为是所有的main方法都是static静态的所以第一次输出a是正确的,对于非静态的b会出现编译时异常。

什么时候才使用静态方法呢?

1,方法不需要访问对象状态,其所需要参数都是通过显示参数提供

2,方法只需要访问类的静态域。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值