package pack;
class PackageDemo
{
public static void main(String[] args)
{
DemoA d = new DemoA();
d.show();
}
}
--------------------------------------------------------------------------------------------------------------
package pack;
class PackageDemo
{
public static void main(String[] args)
{
packa.DemoA d = new packa.DemoA();
d.show();
}
}
package packa;
public class DemoA
{
public void show()
{
System.out.println("demo show run");
}
}
/*
PackageDemo.java:7: 错误: 找不到符号
DemoA d = new DemoA();
^
符号: 类 DemoA
位置: 类 PackageDemo
PackageDemo.java:7: 错误: 找不到符号
DemoA d = new DemoA();
^
符号: 类 DemoA
位置: 类 PackageDemo
2 个错误
错误原因:类名写错
因为类名的全名是:包名.类名
---------------------------------------------------
PackageDemo.java:7: 错误: 程序包packa不存在
packa.DemoA d = new packa.DemoA();
^
PackageDemo.java:7: 错误: 程序包packa不存在
packa.DemoA d = new packa.DemoA();
^
2 个错误
错误原因:pack包不在当前目录下
需要设置classpath,告诉jvm去哪里找指定的pack包。
--------------------------------------------------
PackageDemo.java:7: 错误: DemoA在packa中不是公共的;
无法从外部程序包中对其进行访问
packa.DemoA d = new packa.DemoA();
^
PackageDemo.java:7: 错误: DemoA在packa中不是公共的;
无法从外部程序包中对其进行访问
packa.DemoA d = new packa.DemoA();
^
2 个错误
错误原因:有了包,范围变大,一个包中的类要被访问,必须
要用足够大的权限。
所以被方法的类要被public修饰
----------------------------------------------------
PackageDemo.java:8: 错误: show()在DemoA中不是公共的; 无法从外部程序包中对其进行
访问
d.show();
^
1 个错误
错误原因:类共有后,被访问的成员也要被共有才能被访问
*/
---------------------------------------------------------------------------------------------------------------------
个人总结:了解包与包访问格式,生成包的方式,jar包的生成,掌握访问权限的关键字