JAVA 学习笔记一

今天还是在继续读《JAVA联想》 (Thinking in Java 中文版),这本书的确写的很好,不像有些书(特别是国内的一些书),看着跟看字典没什么区别,读这本书最大的感觉就是在与作者交流,记得以前看过一句话:“读一本好书,就是与一个伟大的灵魂的对话”,依此看来,这本书的确是一本好书。
  虽然书很好,但是我只有电子版,所以看的时间不是很多,现在才读到第二章。前几天一直对JAVA的静态成员和方法很迷惑,刚好今天看到的这一章介绍了一下这些概念,现在感觉比较清楚了,功劳全在这书上,呵呵。静态的成员和方法在Java中主要的功能就是:如果申明一个成员或者方法为静态的,那么就可以直接在这个类中引用,而不需要把类实力化为对象在引用,比如一个类叫Test,如果我们需要引用该类的一个属性i,就必须先实例化为对象:Test t1= new Test(); 然后再通过对象引用:t1.i ,如果是引用该类的一个方法:on(),则一样必须实例化成一个对象然后引用:t1.on();但如果该类中含有静态成员static j和静态方法static open(),则可以直接引用,如果是成员就是Test.j,如果是方法就是:Test.open()。这样的功能我想的确会有用吧。
  还有一个重要的特性,就是静态成员和方法在生成对象是,会共享同一个内存空间,书上的例子非常好:
       定义这样一个类
  class StaticTest {
    Static int i = 47;
  }
       然后用该类生成两个对象:
  StaticTest st1 = new StaticTest();
        StaticTest st2 = new StaticTest();
  这样以来,无论是st1中的i还是st2中的i都是47,而且经我实验,如果用st1.i=50来给st1.i赋个50,则st2.i也会变成50,当然StaticTest.i也变成了50。

你可能感兴趣的:(java,class,联想)