java中的Package语句和import语句
package 为解决类的 命名冲突问题而引入的机制。
package语句作为Java源文件的第一条语句。(若缺省该语句,则指定为无名包。) 约定俗成的给包起名为把公司域名倒过来写,如com.sun Java编译器把包对应于文件系统的目录管理,package语句中,用‘.’来指明包(目录)的层次,例如package com.sun;则该文件中所有的类位于.\com\sun目录下。
总结:
1.如果你要把一个类放在包下面,第一句写package,你编译出来的类必须位于正确的目录下面。
该类的源码可能会产生影响(解决办法:删除或转移到别的目录)
2.如果想在另一个类里面引用包里面的类,要把名字写全。(相当用文件的绝对路径访问)或者用import导入,但位于同一个包中的类不需要引入
3.必须class文件的最上层包中的父目录位于classpath下面。
4.编译后,执行一个类的时候也需要把包名写全,不然无法执行。
J2SDK中主要的包介绍(在jdk5.0/jre/lib/rt.jar里面,可用解压软件解开查看)
Java.lang-包含一些Java语言的核心类,如String、Math、Integer、System和Thread,提供常用功能
Java.awt-包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)。
Java.applet-包含applet运行所需的一些类
Java.net-包含执行与网络相关的操作的类
Java.io-包含能提供多种输入/输出功能的类
Java.util-包含一些实用工具类,如定义系统特性、使用与日期日历相关的函数
其中就Java.lang包不用引入就能直接使用,其他包里面的类都要用import引入才能使用。
如何打包?
先定位到classpath设置的目录下 jar -cvf xx.jar *.* -c 创建新的文档 -v 生成详细输出到详细输出上 -f 指定存档文件名 即把classpath下的所有文件打包成xx.jar文件 如何使用呢? 把xx.jar的绝对路径放到classpath下面,这样就可能正常访问了
eg.
在一个文件中
package com.sun;
public class Cat {
}
在另一个文件中
//import com.sun.*;
public class T {
public static void main(String[] args){
com.sun.Cat c = new com.sun.Cat();
}
}
1.把第一个文件编译生成的.class文件放到com.sun目录下,然后就可编译执行T.java了,其中Cat类必须为public
2.第一个文件不变,修改二个文件成如下:
import com.sun.Cat;
public class T {
public static void main(String[] args) {
//com.sun.Cat c = new com.sun.Cat();
Cat c = new Cat();
}
}
同样可以达到目的。但是有点小问题,就是import com.sun.*;应该可以代替import com.sun.Cat;但在调试过程中却会报错。
但是如果两上文件不在同一文件目录下,这时上面的程序就会报错。为此我们需要为此设置环境变量“classpath”,在里面添加路径,即com.sun的最上层目录的上一级目录,即存放com文件夹的目录名。这样程序就会从这里开始寻找需要的类。
一个文件中可以同时有package和import存在,但在执行时要注意java 后面跟的文件名要写全。
java中的Package语句和import语句的更多相关文章
- Java中的package和Import关键字的作用
一.package关键的作用 1.包的概念 package翻译为包,本质上就是一个文件夹,通过包组织项目结构的过程,就是通过包对应的文件夹管理.java和.class文件的过程. 2.包的作用 通过包 ...
- Java 中 try、catch、finally 语句块的执行顺序
假设代码顺序书写如下:try → catch → finally → 其他代码 则: 1.正常执行顺序:try → catch → finally → 其他代码 2.try,catch和finally ...
- Java中的可变参数以及foreach语句
Java中的可变参数的定义格式如下: 返回值类型 方法名称(类型 ... 参数名称){} foreach语句的格式如下: for ( 数据类型 变量名称 :数据名称){ ... } public ...
- Java基础(2):Java中的四个跳转语句总结goto,break,continue,return
跳转控制语句 Java中的goto是保留字,目前不能使用.虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,比如说,我想在某个循环知道到某一步的时候就结束,现在就做不了这件事情.为了弥补这 ...
- Java中break、continue、return语句的使用区别
break.continue.return之间的区别与联系 在软件开发过程中,逻辑清晰是非常之重要的. 代码的规范也是非常重要的.往往细节决定成败.在编写代码的时候,一定要理解语言的作用以及使用的方法 ...
- 模块(import语句,from...import语句,_name_属性)
1, 什么是模块? 模块就是一系列功能的集合体 模块分为四个通用的类别: 1), 使用python编写的.py文件(*****) 2), 已被编译为共享库或DLL的C或C++扩展 3), 把一系列模块 ...
- java中的package
java中用于存放源文件的文件夹叫做包package package中可以有源文件也可以由其他包. package的“全限定名”不是从磁盘的根目录开始的,而是从源代码的根目录开始的,以点号“.”作为分 ...
- Java中简单的操作(if语句、常用操作符、switch语句、变量赋值等)
---------------------if语句介绍--------------------------------------------------- class IfDemo { public ...
- 基础java中的package的命名规则和import的使用
包的命名一般用公司域名但是注意域名后辍要放前面如下 package com.cnblogs.i.Cat//对应地址是com/cnblos/i/cat.class也就是Cat.class的地址 如果想将 ...
随机推荐
- SPOJ 181 - Scuba diver 二维背包
潜水员要潜水,给出n个气缸(1<=n<=1000),每个气缸中有氧气量为ti,氮气量为ai,气缸重量为wi(1<=ti<=21,1<=ai<=79,1<=wi ...
- NYOJ128前缀式计算
前缀式计算 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 先说明一下什么是中缀式: 如2+(3+4)*5这种我们最常见的式子就是中缀式. 而把中缀式按运算顺序加上括 ...
- Memento 备忘录 快照模式
简介 定义: 在不破坏封装的前提下,捕获一个对象的[内部状态],并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态. 角色: 发起人Originator:要被备份的成员,它提供一创 ...
- codevs 1036 商务旅行 (倍增LCA)
/* 在我还不知道LCA之前 暴力跑的SPFA 70分 三个点TLE */ #include<iostream> #include<cstdio> #include<cs ...
- codevs 1242 布局(查分约束+SPFA)
/* 查分约束. 给出的约束既有>= 又有<= 这时统一化成一种 Sb-Sa>=x 建边 a到b 权值为x Sb-Sa<=y => Sa-Sb>=-y 建边 b到a ...
- OD: Peimei & Versioning Analysis
PE 中漫步—“白眉” 指令追踪技术与 Paimei 程序异常发生的位置通常离漏洞函数很远,当溢出发生时,栈帧往往也会遭到破坏,给动态调试制造很大的困难. 指令追踪最大限度地结合了动态分析和静态分析的 ...
- C#多线程lock解决数据同步
1.代码实例: public class ThreadTest4 { public static void Init() { //多个线程修改同一个值,使用lock锁解决并发 ; i < ; i ...
- Linux下解决高并发socket最大连接数所受的各种限制(解除IO限制)
linux作为服务器系统,当运行高并发TCP程序时,通常会出现连接建立到一定个数后不能再建立连接的情况 本人在工作时,测试高并发tcp程序(GPS服务器端程序),多次测试,发现每次连接建立到3800左 ...
- HexColorPicker 让选色变得更简单[for Mac]
开发iOS的筒子看过来,走过路过,一不小心就错过~ Xcode里的颜色选择器,不能让你随意制定十六进制的颜色,让选色变成了一种折磨,然而作为开发者和设计师又得经常要用到. 现在有了HexColorPi ...
- Mybatis3.0防止SQL注入
一.什么是SQL注入 引用搜狗百科: SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如很多影视网站泄露VIP会员密码大 ...