包及访问控制权限
来源:互联网 发布:陈柏霖人品怎么样知乎 编辑:程序博客网 时间:2024/05/24 04:19
一、包的定义及导入
定义:package 包名称;
所谓的包实际上就是一个文件夹,一个*.class文件要保存在一个文件夹中,既然包本身就是一个文件夹,所以在java编译之灵珠提供专门的打包编译命令
javac -d . 类名称
导入包:(两种方式性能一样) import 包名称.子包的名称.类名称 →手工导入所需要的类
import 包名称.子包名称.* → 由JVM自动加载所需要的类
注意:1.当一个类要被外包访问则必须要声明为public class
2.如果一个类声明为public class 则文件名称必须与类名称一致,而且一个类中只能有一个public class ,而如果使用class 声明一个类,则文件名称可以与类名称不一致,但是执行的时候必须执行生成的class文件名称。
3.当导入不同包的同名类时,在使用同名类时,应该完整写出“包.类名称”!!
二、静态导入
JDK1.5之后,如果一个类中的方法全部使用static声明的静态方法,则导入时就直接使用import static的方式导入,导入格式如下: import static 包.类.*;
三、jar命令
jar(java archive file):由*.class文件压缩成一个文件交付给客户使用。 若要生产jar文件,直接使用JDK中bin目录的jar.exe将所有类文件进行压缩!
jar 命令的主要参数:
C:创建新的文档
V:生成详细的输出信息
F:指定存档的文件名
生成jar包步骤:
先写出自己的类;打包自己写的类【javac -d . *.java】;打成jar包【jar -cvf my.jar org】
使用jar包:设置classpath
三、访问控制权限
java中的四种访问权限;
private:可以定义方法,属性,定义的方法和属性不能被外部看到的
default:可以在本包中的任意访问
protected:保护,不同包的非子类不可以访问
public :公共的,都可以访问
图1
不同包的子类:含义就是你在使用不同包的类时,需要继承人家的类,自己就变成了子类!
总结:当产生一个类之后,为了保证类中的内容不被外部直接看到,则使用private关键字,但是,如果现在有两个关系的类要进行属性互相访问的话就比较麻烦,之前只能使用gertter/setter方法取得和设置,所以为了减少私有属性的访问麻烦,使用了继承的概念,但是继承中private属性也是无法被子类看到的,所以此时,为了方便子类的操作,可以将属性使用protected进行封装,这样一来外部也无法看到(不同包)。
之后有了继承,既然有了父子关系,所以就可以使用向上或者乡下的转型操作,以完成多态性,但是在开发中类与类之间的直接继承关系并不多件,而是继承抽象类或者实现接口,当若干个操作需要接耦合时可以使用接完成。
既然有内部类,则如果一个接口或者抽象类的子类只使用一次,则可以将其定义成匿名内部类。
封装→继承→多态
图2
- 包及访问控制权限
- 包及访问控制权限
- 包及访问控制权限
- 包及访问控制权限
- 包及访问控制权限
- 05---包及访问控制权限
- java 包及访问控制权限备忘
- JAVA中包及访问控制权限
- java的包及访问控制权限
- 4、Java 包及访问控制权限
- 包及访问权限
- 黑马程序员——Java 包及访问控制权限
- java学习之路---包及访问控制权限
- 8. 包及访问权限控制 --- 学习笔记
- 包及访问控制权限(章节摘要)
- 第06章:包及访问控制权限帮助文档
- Java 包及访问控制权限---小总结
- 第5章 包及访问控制权限
- 【九度OJ】题目1054:字符串内排序 解题报告
- SQL Server深入理解“锁”机制
- HTTP 1.1与HTTP 1.0的比较
- 如何删除Eclipse subclipse中记住的SVN用户名密码
- PyCharm 2016.3.2 注册码 亲测有效
- 包及访问控制权限
- 一道反射和泛型的面试题
- Nginx初识
- 学霸的迷宫(bfs)
- HttpURLConnection getContentLength();返回时-1或者是0
- 初来乍到
- C++Primer第五版 第十章习题答案(11~20)
- BZOJ 2118墨墨的等式
- C++ 的operator