对于多个类为了便于管理(同名类的情况),Java提供了一个解决方案。包机制:落实到操作系统上就是文件夹。对Java的文件进行了文件夹管理
包的定义:使用关键字:package,位于程序顶端//package 包名(都是小写)
包的作用:1.对文件进行管理
2.给了类文件命名空间
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
包与包之间的访问
访问另一个包中的类:包名.类名
被访问的类名和方法名都必须public 修饰
包之间的继承:关键字 protected 修饰的方法子类可以调用,父类给其他包中的子类的一种特殊权限
总结:一个包/一个类/子类中/不同包中
//权限:public protected default private
之间的访问的权限只有两种可以用:public protected(该权限是父类给包外子类的特殊权限)
————————————————————————————————————————————————————————————————————————————————————————————————————————
关于包的关键字: import
包的出现,导致类的名称书写不方便——解决办法:导入 import
可以导入整个包:import package.*;
.* 通配符,到不建议整包的导入,一般是要用那些类就导入那些类,用的多就导的多
也可以导入包中的某个类: import package.Demo;
特殊情况一: packa\packaa\Demoa.class\Demoaa.class
导包: import packa.*;
此时: new Demo(); ____是不会成功的。原因:导包明确的是类所在的包 packa 。不会导入packa 中的子包中的类
要使用 Demoaa———— import packaa.*;
特殊情况二:packa\Demo.class
packb\Demo.class//拥有同名类
导入包:import packa.*;
import packb.*;
创建对象: new Demo();这样创建是错误的。一定要明确是哪一个包中的类。//new packa.Demo();
//在一个程序中 可以的导入多个包,但这个程序肯定只属于一个包
————————————————————————————————————————————————————————————————————————————————————————————————————————
jar 包:是 Java中的压缩包
使用: package pack; 使用到java 中的工具 jar.exe