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的更多相关文章

  1. Java学习10——package和import

    package和import语句 为了便于管理大型软件系统中数目众多的类,解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间,使用时,import引入相应package ...

  2. 1.7(java学习笔记)package和import

    package package主要用于管理类,在java中同一个包下不能有相同的类名,可有时项目总会出现很多同名的类,这时就需要通过包来管理类.不同的包下可以有相同的类名. 包就有点类似于文件夹,不同 ...

  3. Java中的package和Import关键字的作用

    一.package关键的作用 1.包的概念 package翻译为包,本质上就是一个文件夹,通过包组织项目结构的过程,就是通过包对应的文件夹管理.java和.class文件的过程. 2.包的作用 通过包 ...

  4. Java package和import语句

    Java中的package和import语句 如果你想让其他人访问你的类,你一定要把你写的类放到正确的子目录下. 在Java里,对于位于包中的类是这样管理的: Java编译器把包对应于文件系统的目录管 ...

  5. 【JAVA】笔记(6)--- toString方法;equals方法;finalize方法;package与import;内部类;

    toString: 1.每创建一个类时,都要重写 toString 方法,这是敲代码的基本素养: 2.重写规则:简单明了: 3.String 类中也有toString方法(SUN公司写的): equa ...

  6. JAVA - package与import解析(一)

    一.为什么要引入package和import?这个问题和c++中引入命名空间是一样的,也是为了解决重名问题.java通过包机制来解决重名问题,也就相当于给重名的代码加一系列前缀,从而达到唯一标识的作用 ...

  7. Java跟Javac,package与import

    今天讨论一下2个指令与2个关键字. 这次的没有IDE环境,直接在txt文本里编程,在cmd里编译运行,搞清楚java的文件结构,还有怎么设置编译器查找类的路径.首先是javac,有一个可带参数java ...

  8. java package and import

    1.Package Package类的主要作用是解决命名冲突.package中所存放的所有文件,一般分一下就分这三种 1,java程序源文件,扩展名为.java. 2,编译好的java类文件,扩展名为 ...

  9. JAVA package与import机制

    JAVA package与import机制 http://files.cnblogs.com/files/misybing/JAVA-package-and-import.pdf import org ...

  10. java中的Package语句和import语句

    在实际项目中会有成百上千个类,我们把近似的类放在同一个包里面,比如把实体类放在实体类包里面   package 为解决类的 命名冲突问题而引入的机制. package语句作为Java源文件的第一条语句 ...

随机推荐

  1. java8流式编程(一)

    传送门 <JAVA8开发指南>为什么你需要关注 JAVA8 <Java8开发指南>翻译邀请 Java8初体验(一)lambda表达式语法 Java8初体验(二)Stream语法 ...

  2. PTA(Advanced Level)1065.A+B and C

    Given three integers A, B and C in [−263,263], you are supposed to tell whether A+B>C. Input Spec ...

  3. 批量删除Maven本地仓库中未下载完成的jar包(不完整的jar包)

    1.删除repository库目录下所有后缀名是.lastUpdated的文件 2.进入maven本地仓库地址: CMD进入windows的路径(或在仓库目录的地址栏直接输入CMD,回车自动打开); ...

  4. Intellij IDEA中使用Debug调试

    转自:https://blog.csdn.net/zj420964597/article/details/78662299只是为了方便学习技术,少走弯路,如果有异议,请留言,及时处理!!!

  5. P4942小凯的数字

    给定一个序列,如12345 56789 1011121314等,输出对其取余9的结果. 那么我们需要明白一个定理,一个序列对一个数的取余结果等于它各位之和取余那个数的结果.证明似乎是这样∑i=0n​a ...

  6. 在字符串中找出第一个只出现一次的字符,Python实现

    要求: 1. 不能依赖库函数直接实现此功能,需使用基础的数据结构实现 2. 时间复杂度 O(n) 思路: 1. 用字典存储每个字符在字符串中出现的次数 2. 列表是有序的,用来存储字符的出现先后 3. ...

  7. RuntimeError: Model class user.models.User doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

    Django 2.x版本迁移数据库报这个错误,user表使用的Django的验证系统 本来就想改一下用户表的表名,莫名的报了个这个错误,在网上找到了解决办法 打开user应用模块下的apps.py文件 ...

  8. linux yum安装过程终止方法

    //中断当前的安装显示 ctrl+z //查找当前yum相关的进程 ps -ef | grep yum //杀掉进程 进程号(pid)

  9. GitHub从小白到熟悉<六>

    复制或 克隆 项目 

  10. python并发编程-进程池线程池-协程-I/O模型-04

    目录 进程池线程池的使用***** 进程池/线程池的创建和提交回调 验证复用池子里的线程或进程 异步回调机制 通过闭包给回调函数添加额外参数(扩展) 协程*** 概念回顾(协程这里再理一下) 如何实现 ...