现在的位置: 首页 > 综合 > 正文

别样JAVA学习(六)继承下(3.1)包package

2018年11月02日 ⁄ 综合 ⁄ 共 1257字 ⁄ 字号 评论关闭

前面几节学习了JAVA的抽象接口多态内部类以及异常,接下来继续学习有关类的内容,

我们日常生活中如果有两个相同文件名的文件在同一个文件夹,我们会怎么做,

是不是会在文件夹下再见两个文件夹,把这两个相同文件名放进去。

那么包的作用也是这样,对类文件进行分类管理;给类提供多层命名空间;

写在程序文件的第一行;类名的全称是包名.类名;包也是一种封装形式。


1、包与包之间访问

之前类名名字多个单词首字母大写,包名名字所有字母小写。现在

类名全称为包名.类名

DemoA.java

package demoa;

class DemoA
{
	void show()
	{
		System.out.println("demoa run");
	}
}

PackageDemo.java

package Pack;

class PackageDemo
{
	public static void main(String[] args)
	{
		DemoA d=new DemoA();
		d.show();
	}
}

错误原因:类名写错。因为类名的全名是:包名.类名。

class PackageDemo
{
	public static void main(String[] args)
	{
		demoa.DemoA d=new demoa.DemoA();
		d.show();
	}
}

错误原因:packa包不在当前目录下

需要设置classpath,告诉jvm去哪里找指定的packa包。

然后

错误原因:有了包,范围变大,一个包中的类要被访问,必须要有足够大的权限。

需要在DemoA类前加public

然后

错误原因:类公有后,被访问的成员也要公有才可以被访问。

然后

成功了。


总结:

        包与包之间进行访问,被访问的包中的类以及类中的成员,需要public修饰。

        不同包中的子类还可以直接访问父类中被protected权限修饰的成员。

包与包之间可以使用的权限只有两种,public protected。


                          public    protected     default    private

同一个类中           ok            ok              ok           ok

同一个包中           ok            ok              ok          

子类                     ok             ok    不同包的子类不行        

不同包中              ok 


类名前面加了公有以后,类名必须和java文件名保持一致。

注意:一个java文件内不可出现两个以上的公有类或者接口。


2、导入import

为了简化类名的书写,使用一个关键字,import。

import导入的是包中的类。

建议,不要写通配符*,需要用到包中的哪个类,就倒入哪个类。


eclipse,package不用你写,import也不用你写,全都是自动给你写好。按一个快捷键全都进来了。


建议定义包名不要重复,可以使用Url来完成定义,url是唯一的。

抱歉!评论已关闭.