posts - 89,  comments - 98,  trackbacks - 0

          Java接口當中有一個類型為常量接口,我在網(wǎng)上看到有些人不提倡使用這種方式。具體的原因也沒怎么講,但是在這里我還是想與大家討論一下這個接口方式的使用。

          希望有對此接口使用方式有深刻了解的網(wǎng)友能夠多提意見:

          今天朋友發(fā)來郵件談起這種接口方式,說她寫的程序當中的最后一句有錯,讓 我?guī)椭纯矗合旅媸沁@段程序的源碼

          interface Math
          {
          ??double PI=3.1415926;
          }
          class Arithmetic implements Math
          {
          ??double roudeArea(double radius)
          ???? {
          ???????? return PI*radius*radius;
          ???? }
          }
          class Student
          {
          ?? public static void main(String[] args)
          ???? {
          ?????? Arithmetic a=new Arithmetic();
          ?????? System.out.println(a.roudeArea(3));
          ?????? System.out.println(Math.PI);
          ?????? System.out.println(Arithmetic.PI);
          ?????? System.out.println(a.PI);
          ????? }
          }



          我在eclipse里面看了,是一個警告原因就在于她用a.PI來取得常量值的方式的警告。

          其實原因很簡單,就是一個靜態(tài)字段需要在一個靜態(tài)方法中使用的警告。

          看了這段代碼后,我發(fā)現(xiàn)其實她使用常量接口的作用已經(jīng)在實現(xiàn)了接口Maths的類中體現(xiàn)。就是我們可以在實現(xiàn)常量接口的類中直接使用常量而不必加上前面的對象,當然使用Math.PI也是對的,不過為了方便我們可以在這個類當中直接使用PI去代替它。

          同樣我們也可以使用類Arithmetic當中的PI,我們可以直接引用arithmetic.PI,但是我們不能夠使用a.PI

          類當中的常量定義對其它類來說是可見可用的:他的使用可以以 類名.常量名 即可

          而接口當中:對其它類來說是不可見的,除非我們需要去實現(xiàn)這個接口,只有實現(xiàn)它我們才可以直接使用 常量名 的方式

          常量接口當中定義的常量,在實現(xiàn)這個接口的類當中可以直接拿來使用。它里面沒有相關(guān)屬性和其它方法。還有一點就是:常量在使用起來更為簡潔。

          posted on 2006-08-02 15:41 水煮三國 閱讀(1365) 評論(2)  編輯  收藏 所屬分類: J2SE

          FeedBack:
          # re: 討論:Java 接口當中的 “常量接口”
          2006-10-26 08:27 | 水煮三國
          其實在interface當中定義的數(shù)據(jù)成員都是static final的,因此我們可以直接使用,且不能被修改  回復(fù)  更多評論
            
          # re: 討論:Java 接口當中的 “常量接口”
          2013-06-28 10:44 | maaoi
          用接口來管理常量會使程序失去動態(tài)的特性。
          可以參照:http://www.ibm.com/developerworks/cn/java/l-java-interface  回復(fù)  更多評論
            
          <2006年8月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 211649
          • 排名 - 266

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 太谷县| 西峡县| 女性| 沽源县| 江口县| 石家庄市| 赫章县| 通州市| 黔西县| 弥勒县| 北京市| 通州区| 鸡东县| 珲春市| 惠来县| 吉安市| 民县| 武城县| 射洪县| 济源市| 菏泽市| 屯留县| 类乌齐县| 耒阳市| 大城县| 雷山县| 永新县| 巴马| 莱西市| 肃宁县| 滨州市| 英吉沙县| 雅安市| 霸州市| 阿城市| 浠水县| 丹寨县| 稻城县| 镇安县| 榆中县| 北宁市|