首页 > 编程语言 > 详细

java static学习

时间:2019-11-24 18:08:24      阅读:105      评论:0      收藏:0      [点我收藏+]

原创,转载请注明来源sogeisetsu的博客园
static,在类里面定义公共的属性,它可以统一修改,并只占一个内存。从而达到方便修改和少占内存的目的
先放上代码,您可以先越过代码,看后面的讲解内容

class Boook {//随意定义一个类
    private int value;
    private String name;
    static String pub = "科大出版社";//static,在类里面定义公共的属性,它可以统一修改,并只占一个内存。从而达到方便修改和少占内存的目的
    public Boook(int value, String name) {
        this.name = name;
        this.value = value;
    }
    public String getInfo(){
        return "|-"+"价格:"+this.value+"\t书名:"+this.name+"\t出版社:"+this.pub;
    }
}

public class StaticStudy {
    public static void main(String[] args) {
        System.out.println("static学习");
        //调用Boook
        Boook a1 = new Boook(12, "数学");
        Boook a2 = new Boook(19, "国语");
        Boook a3 = new Boook(14, "英文");
        System.out.println(a1.getInfo());
        System.out.println(a2.getInfo());
        System.out.println(a3.getInfo());
        /*
        * |-价格:12   书名:数学   出版社:科大出版社
          |-价格:19   书名:国语   出版社:科大出版社
          |-价格:14   书名:英文   出版社:科大出版社*/
        //改变一个的公共属性,全都改变。
        a1.pub="青岛出版社";
        System.out.println(a1.getInfo());
        System.out.println(a2.getInfo());
        System.out.println(a3.getInfo());
        /*
        * |-价格:12   书名:数学   出版社:青岛出版社
          |-价格:19   书名:国语   出版社:青岛出版社
          |-价格:14   书名:英文   出版社:青岛出版社
        * */
        //建议用Boook.pub来修改
        Boook.pub="济南出版社";
        System.out.println(a1.getInfo());
        System.out.println(a2.getInfo());
        System.out.println(a3.getInfo());
        /*
        * |-价格:12   书名:数学   出版社:济南出版社
          |-价格:19   书名:国语   出版社:济南出版社
          |-价格:14   书名:英文   出版社:济南出版社
        * */
    }
}

先随意定义一个类,名称为Boook,功能为写书的价格,书名和出版社。

class Boook {//随意定义一个类
    private int value;
    private String name;
    static String pub = "科大出版社";//static,在类里面定义公共的属性,它可以统一修改,并只占一个内存。从而达到方便修改和少占内存的目的
    public Boook(int value, String name) {
        this.name = name;
        this.value = value;
    }
    public String getInfo(){
        return "|-"+"价格:"+this.value+"\t书名:"+this.name+"\t出版社:"+this.pub;
    }
}

书名和价格都是普通的属性,出版社是static属性,因为这些书都是一个出版社的,用static属性只占一个内存,可以节省内存。并且也易于修改。
附上ststic内存图
技术分享图片
先调用一个

        Boook a1 = new Boook(12, "数学");
        Boook a2 = new Boook(19, "国语");
        Boook a3 = new Boook(14, "英文");
        System.out.println(a1.getInfo());
        System.out.println(a2.getInfo());
        System.out.println(a3.getInfo());
        /*
        * |-价格:12   书名:数学   出版社:科大出版社
          |-价格:19   书名:国语   出版社:科大出版社
          |-价格:14   书名:英文   出版社:科大出版社*/

返回

        |-价格:12 书名:数学   出版社:科大出版社
          |-价格:19   书名:国语   出版社:科大出版社
          |-价格:14   书名:英文   出版社:科大出版社

修改出版社a1.pub="青岛出版社";,改变一个的公共属性,全都改变。
返回

        |-价格:12 书名:数学   出版社:青岛出版社
          |-价格:19   书名:国语   出版社:青岛出版社
          |-价格:14   书名:英文   出版社:青岛出版社

可以看到,修改一个对象的公共属性,那所有对象相应的公共属性都会改变
公共属性建议用类名.公共属性来修改。比如这个Boook类用Boook.pub来修改。Boook.pub="济南出版社";修改成济南出版社,来看一下返回值

        |-价格:12 书名:数学   出版社:济南出版社
          |-价格:19   书名:国语   出版社:济南出版社
          |-价格:14   书名:英文   出版社:济南出版社

java static学习

原文:https://www.cnblogs.com/sogeisetsu/p/11922830.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!