成員變數和成員方法的繼承與成員的存取控制符相關,存取控制符決定了子類是否可以繼承父類的成員。
存取控制符還與另外一個概念相關,就是包(package)。
1、什麼是包
簡單的理解,包是對類的分類,把功能相關的類放在相同的包中,相互之間訪問的時候比較方便。
例如之前介紹過的String屬於java.lang包,java.lang就是包名,很多基本的類都在這個包中,包括前面介紹的Object類。
再例如,前面介紹過的日期類java.util.Date,java.util就是包名,Date是類名。java.util是工具包,學習Java,這個包中的類都應該非常熟悉。
在訪問一個類的時候一定要指出包名,有時候稱“全類名”或者“完整的類名”,意思就是包含包名的類名。
不同的包裡可以有相同的類,通過包名來區分不同的類。例如java.sql.Date和java.util.Date,都是表示日期的類。
2、包的定義
使用package定義包,例如:
package ch12;
包名也可以由多部分組成,多部分之間使用“.”隔開,例如:
package ch12.test;
包的各個組成部分應該盡量有意義,對於一些通用的組件,在命名包的時候要盡量的保持全世界唯一,所以通常會在包名中包含比較豐富的資訊,例如國家標識、公司的類型、公司的名字、項目的名字等。例如:
com.mysql.jdbc
cn.neusoft.ufs.common
注意:包的聲明必須是Java檔案中的第一行有效行,下面的代碼是錯誤的。
import java.util.*;
package ch12;
public class MyTest{
...
}
3、包的引用
在某個類中要使用另外一個類的時候,需要聲明這個類,通過import聲明,如果要訪問的類和當前類在同一個包中,則不用引入。看下面的代碼:
package ch11;
public class A{
...
}
package ch12;
public class B{
...
}
package ch12;
import ch11.A;
public class C{
private A a;
private B b;
...
}
在類C中要訪問類A和類B,因為類A和當前類C位於不同的包,所以需要引入類A,而類B與類C位於相同的包,所以不用引入。
包ch11,包ch11.action,包ch11.common之間有關係嗎? 請記住:這些包之間沒有任何關係。
包對類和成員的訪問有什麼影響以及有什麼方便之處,請聽下回講解。
上一次: 第三十三講 父類與繼承下一次: 第三十五講 存取權限李緒成 CSDN Blog:http://blog.csdn.net/javaeeteacher邀請您為好友:http://student.csdn.net/invite.php?u=124362&c=7be8ba2b6f3b6cc5