Package(包與包之間的訪問)

PackageDemo.java文件

package pack;
class Demo
{
    public static void main(String args [])
    {
        packa.DemoA d= new packa.DemoA();
        d.show();
    }
}
DemoA.java文件


package packa;

public class DemoA
{

    public void show()
    {
        System.out.println("hello world!");
    }
}


/*
G:\沒用的>javac -d . DemoA.java
G:\沒用的>javac -d . PackageDemo.java
PackageDemo.java:7: 錯誤: 找不到符號
        DemoA d= new DemoA();
        ^
  符號:   類 DemoA
  位置: 類 Demo
PackageDemo.java:7: 錯誤: 找不到符號
        DemoA d= new DemoA();
                     ^
  符號:   類 DemoA
  位置: 類 Demo
2 個錯誤
G:\沒用的>
錯與原因:類名寫錯,
因爲類名的全稱是:包名.類名。



G:\沒用的>javac -d . PackageDemo.java
PackageDemo.java:7: 錯誤: DemoA在packa中不是公共的; 無法從外部程序包中對其進行訪
問
        packa.DemoA d= new packa.DemoA();
             ^
PackageDemo.java:7: 錯誤: DemoA在packa中不是公共的; 無法從外部程序包中對其進行訪
問
        packa.DemoA d= new packa.DemoA();
                                ^
2 個錯誤
G:\沒用的>
錯誤原因:有了保範圍變大,一個包中的類要被訪問必須要有做夠大的權限,所以被訪問的類要被public修飾



G:\沒用的>javac -d . DemoA.java
G:\沒用的>javac -d . PackageDemo.java
PackageDemo.java:8: 錯誤: show()在DemoA中不是公共的; 無法從外部程序包中對其進行
訪問
        d.show();
         ^
1 個錯誤
G:\沒用的>
錯誤原因:類公有後被訪問的成員也要共有,纔可以被訪問



G:\沒用的>java pack.Demo
hello world!
G:\沒用的>



總結:包與包之間進行訪問,被訪問的包中的類以及類中的成員,需要public修飾
*/


發佈了63 篇原創文章 · 獲贊 16 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章