JAVA笔记5-package和import
1、基本介绍
为便于管理大型软件系统中数目众多的类,解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间。在实际项目开发中任何类都应该定义在包中。
(1)package语句必须作为Java源文件的第一条语句,指明该文件中定义的类所在的包。(如果缺省package语句,则指定为无名包)
格式:package pkg1[.pkg2[.pkg3...]];
约定俗成的规定是包名写成“公司域名倒过来”,后面还可以加入项目名、部门名等。
(2)Java编译器把包对应于文件系统的目录管理,package语句中,用“.”来指明包(目录)的层次,例如:
package com.sxt;//则该文件中所有的类位于.\com\sxt目录下。
2、例子
编译出的.class文件必须位于正确的目录,即.class文件所在目录与包的层次完全一致;其他包中的类在使用该类时,必须把名字写全,即包名.类名(或者写入import语句);在执行时(java **)是也要写全:包名.类名
(1)
(2)
(3)
3、总结
(1)如果想将一个类放入包中,在这个类源文件第一句写package。
(2)必须保证该类的class文件位于正确的目录下。
该类的源码可能会产生影响,这时应删除或转移源码到另外的目录。
(3)另外的类想访问该类的话,有两种方法:
a.写全名:包名.类名;
b.用import语句(*或具体类名)。
注:访问位于同一个包中的类不需要这样。
(4)class文件的最上层包的父目录必须位于classpath下。
classpath设置:classpath是个很麻烦的问题,将表示当前路径的“.”放在最前面,之后加“;”。
(5)执行一个类时,需要写全包名(包名.类名)。该类的class文件的最上层包的父目录也必须位于classpath下。
4、JDK提供的包
用下面方法查看JDK提供的包,位于rt.jar目录下,将其解压缩即可查看。
JDK提供的包有:
java.lang中的类不许import,可以直接用;其他包必须import。
5、打包自己的类
在cmd中将当前位置定位在包的父目录,执行语句:jar -cvf xx.jar *.* 即可实现打包。
之后将jar包添加到classpath中(如下图),即可使用。
JAVA笔记5-package和import的更多相关文章
- Java学习10——package和import
package和import语句 为了便于管理大型软件系统中数目众多的类,解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间,使用时,import引入相应package ...
- 1.7(java学习笔记)package和import
package package主要用于管理类,在java中同一个包下不能有相同的类名,可有时项目总会出现很多同名的类,这时就需要通过包来管理类.不同的包下可以有相同的类名. 包就有点类似于文件夹,不同 ...
- Java中的package和Import关键字的作用
一.package关键的作用 1.包的概念 package翻译为包,本质上就是一个文件夹,通过包组织项目结构的过程,就是通过包对应的文件夹管理.java和.class文件的过程. 2.包的作用 通过包 ...
- Java package和import语句
Java中的package和import语句 如果你想让其他人访问你的类,你一定要把你写的类放到正确的子目录下. 在Java里,对于位于包中的类是这样管理的: Java编译器把包对应于文件系统的目录管 ...
- 【JAVA】笔记(6)--- toString方法;equals方法;finalize方法;package与import;内部类;
toString: 1.每创建一个类时,都要重写 toString 方法,这是敲代码的基本素养: 2.重写规则:简单明了: 3.String 类中也有toString方法(SUN公司写的): equa ...
- JAVA - package与import解析(一)
一.为什么要引入package和import?这个问题和c++中引入命名空间是一样的,也是为了解决重名问题.java通过包机制来解决重名问题,也就相当于给重名的代码加一系列前缀,从而达到唯一标识的作用 ...
- Java跟Javac,package与import
今天讨论一下2个指令与2个关键字. 这次的没有IDE环境,直接在txt文本里编程,在cmd里编译运行,搞清楚java的文件结构,还有怎么设置编译器查找类的路径.首先是javac,有一个可带参数java ...
- java package and import
1.Package Package类的主要作用是解决命名冲突.package中所存放的所有文件,一般分一下就分这三种 1,java程序源文件,扩展名为.java. 2,编译好的java类文件,扩展名为 ...
- JAVA package与import机制
JAVA package与import机制 http://files.cnblogs.com/files/misybing/JAVA-package-and-import.pdf import org ...
- java中的Package语句和import语句
在实际项目中会有成百上千个类,我们把近似的类放在同一个包里面,比如把实体类放在实体类包里面 package 为解决类的 命名冲突问题而引入的机制. package语句作为Java源文件的第一条语句 ...
随机推荐
- 【并行计算-CUDA开发】FPGA 设计者应该学习 OpenCL及爱上OpenCL的十个理由
为什么要学习OpenCL呢?就目前我所从事的医疗超声领域,超声前端的信号处理器一般是通过FPGA或FPGA+DSP来设计的,高端设备用的是FPGA+ GPU架构.传统的设计方法是通过HDL语言来进行设 ...
- Web Components的概念和用法
参考链接:https://developer.mozilla.org/zh-CN/docs/Web/Web_Components
- Fragment通过接口回调向父Activity传值
Fragment: 定义一个接口,在onAttach()方法中,实例化接口对象.要求是父Activity要实现该接口.然后在你想发送信息的地方调用callBackValue.sendMessageVa ...
- __VA_ARGS__用法
转载 自定义调试信息的输出 调试信息的输出方法有很多种, 例如直接用printf, 或者出错时使用perror, fprintf等将信息直接打印到终端上, 在Qt上面一般使用qDebug,而守护进 ...
- failed to push some refs to 'git@github.com:cq1415583094/MyBatis.git'解决办法
将本地git仓库代码提交到GitHub上时,出现failed to push some refs to 'git@github.com:cq1415583094/MyBatis.git', 导致的原因 ...
- NIKKEI Programming Contest 2019-2 Task E. Non-triangular Triplets
$\require{enclose}$ 必要条件 一方面 $\sum_{i=1}^{N}(a_i + b_i) \le \sum_{i=1}^{N} c_i \implies 2\sum_{i=1}^ ...
- 掌握MyBatis的核心对象
一.获取SqlSessionFactoryBuilder对象 1.SqlSessionFactoryBuilder的作用 所有的MyBatis应用都是以SqlSessionFactory实例为中心.S ...
- HDU1305 Immediate Decodability (字典树
Immediate Decodability An encoding of a set of symbols is said to be immediately decodable if no cod ...
- HDU 6662 Acesrc and Travel 换根DP,宇宙最傻记录
#include<bits/stdc++.h> typedef long long ll; using namespace std; const int maxn=1e6+50; cons ...
- CSP 俄罗斯方块(201604-2)
问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏. 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块.每一轮,都会有一个新的由4个小方 ...