java之static用法

来源:互联网 发布:约瑟夫环C语言数组实现 编辑:程序博客网 时间:2024/06/04 18:34
需要注意的是 静态属性和方法属于类方法,加载类后,就已经存在静态属性和方法,实例是需要用new构造出来后 才会有引用根据先后顺序,就有以下两条规则1、非静态的方法可以调用静态的或者非静态的属性和方法;2、静态的方法不可以调用非静态的属性和方法,因为非静态的还不一定存在,只能先构造出来后,再通过实例引用例如 在main方法中 可以直接调用static 的方法,调用非static方法 需要先构造出类的实例,通过实例才能调用方法
class Poker{
    public static final int MAX = 52;
    public static Card[] card = new Card[MAX];

   

//静态可以访问静态的

    public static void initpoker(){
        for(int i = 0; i < 4; i++){
            for(int j = 0; j < 13; j++){
                card[i*13+j] = new Card(i, j);
            }
        }
    }
    public static void printpoker(){
        for(int i = 0; i < 4; i++){
            for(int j = 0; j < 13; j++){
                System.out.print(card[i*13+j].toString()+",");
            }
            System.out.println();
        }
    }

   

//非静态的可以访问静态的;

    void wash(){
        for(int i = 0; i < 200; i++){
            int point_x = (int)(Math.random()*MAX);
            int point_y = (int)(Math.random()*MAX);
            Card temp =card[point_x];
                    
        }
    }

}

这样的代码不会错误,下面的是错误的代码:

class Poker{
    public static final int MAX = 52;
     Card[] card = new Card[MAX];
   

//静态不能访问非静态
    public static void initpoker(){
        for(int i = 0; i < 4; i++){
            for(int j = 0; j < 13; j++){
                card[i*13+j] = new Card(i, j);
            }
        }
    }
    public static void printpoker(){
        for(int i = 0; i < 4; i++){
            for(int j = 0; j < 13; j++){
                System.out.print(card[i*13+j].toString()+",");
            }
            System.out.println();
        }
    }
   

//非静态可以访问非静态
    void wash(){
        for(int i = 0; i < 200; i++){
            int point_x = (int)(Math.random()*MAX);
            int point_y = (int)(Math.random()*MAX);
            Card temp =card[point_x];
                    
        }
    }
}




原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 棉被淋了一点雨怎么办 苹果手机被拉进电话群怎么办 墙上的插座烧了怎么办 富士康早退4分钟怎么办 我老婆起泡疹腿剌痛睡不着了怎么办 oppo耳机孔坏了怎么办 魅族耳机口坏了怎么办 控制线的报验资料怎么办 人失踪报警派出所不管怎么办 铁板的货架久了怎么办 干镀锌让环保查了怎么办 水管软管生锈了拧不动怎么办 镀锌管会生锈吗.怎么办 冷镀锌钢管生锈了怎么办 卖了过期的东西怎么办 喝到了假的饮料怎么办 烧汤总是溢锅怎么办 脚踩垃圾桶坏了怎么办 连衣裙特别容易起褶怎么办 施肥过度烧根了怎么办 农作物施用尿素发生肥害怎么办? 水稻尿素施多了怎么办 花施肥施多了怎么办 玉米被化肥烧了怎么办 撒施复合肥没有充分融化怎么办 绿箩化肥施多了怎么办 辣椒化肥施多了怎么办? 化肥施多了烧苗怎么办 绿植施肥施多了怎么办 盆栽肥料放多了怎么办 三环复合肥怎么办啊 母猪下崽后不吃食怎么办 猪自配料料槽不下怎么办 美甲边缘起翘怎么办 猪粪流到鱼塘里鱼死了怎么办啊 在基本农田建有机肥厂怎么办 有机肥厂的环评怎么办 织玻璃纤维网布环评怎么办 吃了受潮的奶粉怎么办 喝了受潮的奶粉怎么办 刚买的奶粉受潮怎么办