Java接口當中有一個類型為常量接口,我在網上看到有些人不提倡使用這種方式。具體的原因也沒怎么講,但是在這里我還是想與大家討論一下這個接口方式的使用。
希望有對此接口使用方式有深刻了解的網友能夠多提意見:
今天朋友發來郵件談起這種接口方式,說她寫的程序當中的最后一句有錯,讓 我幫著看看:下面是這段程序的源碼
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來取得常量值的方式的警告。
其實原因很簡單,就是一個靜態字段需要在一個靜態方法中使用的警告。
看了這段代碼后,我發現其實她使用常量接口的作用已經在實現了接口Maths的類中體現。就是我們可以在實現常量接口的類中直接使用常量而不必加上前面的對象,當然使用Math.PI也是對的,不過為了方便我們可以在這個類當中直接使用PI去代替它。
同樣我們也可以使用類Arithmetic當中的PI,我們可以直接引用arithmetic.PI,但是我們不能夠使用a.PI
類當中的常量定義對其它類來說是可見可用的:他的使用可以以 類名.常量名 即可
而接口當中:對其它類來說是不可見的,除非我們需要去實現這個接口,只有實現它我們才可以直接使用 常量名 的方式
常量接口當中定義的常量,在實現這個接口的類當中可以直接拿來使用。它里面沒有相關屬性和其它方法。還有一點就是:常量在使用起來更為簡潔。
FeedBack:
# re: 討論:Java 接口當中的 “常量接口”
2013-06-28 10:44 | maaoi
只有注冊用戶登錄后才能發表評論。 | ||
![]() |
||
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
|
||
相關文章:
|
||
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | 31 | 1 | |||
2 | 3 | 4 | 5 | 6 | 7 | 8 | |||
9 | 10 | 11 | 12 | 13 | 14 | 15 | |||
16 | 17 | 18 | 19 | 20 | 21 | 22 | |||
23 | 24 | 25 | 26 | 27 | 28 | 29 | |||
30 | 1 | 2 | 3 | 4 | 5 | 6 |
常用鏈接
留言簿(4)
隨筆分類(85)
隨筆檔案(89)
- 2009年8月 (1)
- 2008年7月 (1)
- 2007年11月 (1)
- 2007年8月 (1)
- 2007年7月 (2)
- 2007年6月 (1)
- 2007年2月 (5)
- 2007年1月 (1)
- 2006年12月 (1)
- 2006年11月 (1)
- 2006年10月 (11)
- 2006年9月 (28)
- 2006年8月 (9)
- 2006年7月 (12)
- 2006年6月 (3)
- 2006年5月 (1)
- 2006年4月 (3)
- 2006年3月 (4)
- 2006年2月 (3)
文章分類(14)
文章檔案(42)
- 2006年9月 (24)
- 2006年7月 (5)
- 2006年6月 (2)
- 2006年3月 (3)
- 2005年11月 (1)
- 2005年3月 (1)
- 2004年10月 (1)
- 2004年5月 (1)
- 2004年1月 (1)
- 2003年11月 (3)
收藏夾(37)
java
oracle
Sybase
搜索
積分與排名
- 積分 - 210989
- 排名 - 266
最新評論

- 1.?re: document.getElementsByName()的用法
- 455656
- --525233
- 2.?re: 討論:Java 接口當中的 “常量接口”
- 評論內容較長,點擊標題查看
- --maaoi
- 3.?re: document.getElementsByName()的用法
- 謝謝,很明了
- --sf
- 4.?re: Ant:編寫build.xml的方法
- 學習了
- --sss
- 5.?re: Java 堆與棧的使用
-
你是個sb嗎?
- --zr