2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 包机制 访问修饰符 Jar包 java初学 面向对象五

包机制 访问修饰符 Jar包 java初学 面向对象五

时间:2020-05-10 19:05:25

相关推荐

包机制 访问修饰符 Jar包   java初学 面向对象五

包机制

问题:当定义了多个类的时候,可能会发生类名的重复问题。

在java中采用包机制处理开发者定义的类名冲突问题。

怎么使用java的包机制呢?

使用package 关键字。package 包名。

问题:

javac PackDemo1.java编译没有问题。java PackDemo1 运行出错。

错误原因分析:

在当前目录下找不到有pack目录,更加找不到pack目录下面的PackageDemo1.java文件。

解决办法:

自己在当前目录下新建一个pack目录。执行Java pagk.PackageDemo1命令。(包其实就是文件夹).

存在的问题:使用包机制的话,我们是否每次都要自己创建一个文件夹呢?

解决:

在编译的时候则可以指定类文件存放的文件夹了。

javac -d . PackageDemo1.java-d 后面跟着就是包名,指定包存放的路径。

包的优点

防止类文件冲突。使源文件与类文件分离,便已软件最终发布。

注意细节

一个java类只能定义在一个包中。包语句肯定是描述类的第一条语句。

包机制引发的问题

有了包之后访问类每次都需要把包名和类名写全。

解决:使用import语句。

格式import 包名.类名;

注意细节:

如果想使用一个包中的许多类时,这时不需要多条的导入语句,使用“*”号通配符代表所有的类。使用*时不能导入包中的子类包的class文件。import语句可以是多条.访问修饰符

访问修饰符是用来控制类、属性、方法的可见性的关键字称之为访问修饰符。

public 一个类中,同一包中,子类中,不同包中protected 一个类中,同一包中,子类中default 一个类中,同一包中private 一个类中(修饰类成员)类成员 成员使用private修饰只在本类中使用。如果一个成员没有使用任何修饰符,就是default,该成员可以被包中的其他类访问。protected成员被protected修饰可以被包中其他类访问,并且位于不同包中的子类也可以访问。public修饰的成员可以被所有类访问。 (修饰类)类 类只有两种public和默认(成员内部类可以使用private))父类不可以是private和protected,子类无法继承public类可以被所有类访问默认类只能被同一个包中的类访问Jar包

1:jar就是打包文件

jar文件时一种打包文件java active File,与zip兼容,称之为jar包

开发了很多类,需要将类提供给别人使用,通常以jar包形式提供.当项目写完之后,需要及将class字节码文件打包部署给客户。如何打包?可以使用jar命令.

2:jar命令

1:jar工具存放于jdk的bin目录中(jar.exe)

2:jar工具:主要用于对class文件进行打包(压缩)

3:dos中输入jar查看帮助

3:案例使用jar命令

将day10中的cn文件打包为名字为test.jar文件(cn 文件是使用javac -d 编译带包的class文件夹)

jar cvf test.jar cn

详细命令:

1:jar cf test.jar cn 在当前目录生成test.jar 文件,没有显示执行过程

2:jar cvf test.jar cn 显示打包中的详细信息

3:jar tf test.jar 显示jar文件中包含的所有目录和文件名

4:jar tvf test.jar 显示jar文件中包含的所有目录和文件名大小,创建时间详

细信息

5:jar xf test.jar 解压test.jar到当前目录,不显示信息

6:jar xvf test.jar 解压test.jar到当前目录,显示详细信息

7:可以使用WinRaR进行jar解压

8;将两个类文件归档到一个名为 test2.jar 的归档文件中:

jar cvf test2.jar Demo3.class Demo4.class

9:重定向

1:tvf可以查看jar文件内容,jar文件大,包含内容多,dos看不全。

2:查看jdk中的rt.jar 文件 jar tvf rt.jar

3:jar tvf rt.jar>d:\rt.txt

存在问题:

计算的程序的可变的。把会改变的程序抽取出来单独做一个方法。但是该方法不能确定运行的代码,声明为抽象的方法。创建实现类继承并实现父类的未实现的函数。为了避免子类重写父类的模版代码,需要将模版代码修饰为final

其他:

面向对象 java初学 /fei8888888/article/details/84451429

static关键字 封装、继承和多态 java初学-面向对象二 /fei8888888/article/details/84537367

抽象类、多实现、多继承 java初学-面向对象三 /fei8888888/article/details/84537551

内部类、异常 java初学-面向对象四 /fei8888888/article/details/84579208

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。