java中的package和import
一, package,import引入原因:
package:
我们都熟悉超市,超市虽然庞大,东西繁多,却管理的井井有条,很容易找到某样东东;,之所以能如此,一个重要的原因就是采用了分类放置,既方便了管理,又方便了寻找
Package也是一个分类放置东东的区域,不过它放的不是商品而是java中的类。Java中有各种各样的类,
内容丰富,门类繁多,为了更好的管理,识别,就为每一类型的类建立一个区域,这个区域就是包
import:
类放入了包中,在运行时如何才能找到它呢? 我们知道类分三种,“系统类”,“扩展类”,“用户类”;前两种由jvm指定路径; 而用户类的是通过 “–classpath”, “classpath” 及 缺省路径“.”与import的配合来查找的,查找顺序如下:
1. –classpath(命令行模式下使用);
2. classpath(在环境变量中设计,当有 –classpath时该路径信息不起作用)
3. 缺省路径”.” 当前目录(当前两步都没有时,才会使用缺省路径)
朋友们不知是否思考过这样的问题: 既然“系统类”,“扩展类”,“用户类”java都有路径机制对应到它们,那为什么还要引入import呢? 这似乎是个有趣的话题
我们知道,java程序在运行时,除一些系统类通过系统内定的路径(写死了)预载入外,其它所有的类都必须要”精确“(请注意是精确喔)定义位置, 然而,实际中无论是通过jvm内定还是classpath,二者一般只指定到比较大的层次上(为什么要这样呢,想想就知道喽),大致如下:
系统类jvm指定到 jre\lib\jt.jar (jt下有很多的包喔,包下还有包喔)
扩展类jvm指定到 jre\lib\ext (ext下也有很多个jar包,每个jar包下可能都有一些包层次结构)
用户类jvm根据classpath来指定某个包(包下还可能有包喔)
指定的这么笼统,jvm当然不可能找到了,就好比,”张三在 中国,河南省,洛阳市,马家庄 17 队“; 如果仅仅告诉你张三在中国,河南省,让你去找,够费劲的吧。,java也一个样,为了提高效率,java要求必须提供类的”精确“路径,由是,引入了import这个关键字,它就是类具体地址的导航(精确到类的直属包),
下面分”编译期“ 和 ”运行期“分别来谈谈路径的问题:
二, 深入编译期的package运作机制
【以下部分引用java深度历险】
为便于说明,先制作
相关文档:
import java.io.*;
import java.awt.*;
import java.awt.image.*;
import java.awt.Graphics;
import java.awt.color.ColorSpace;
import javax.imageio.ImageIO;
public class ChangeImageSize
{
/** *//**
* 缩放图像
* @param srcImage ......
一、IO流的三种分类方式
1.按流的方向分为:输入流和输出流
2.按流的数据单位不同分为:字节流和字符流
&n ......
通常的观念认为,事务仅与数据库相关。
事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性
(isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示
当事务执行失败时,所有被该事务影响的数据 ......
注意:在Java ME平台上获取手机串号,在某些手机中是可行的,但是某些手机中就是无法获取的。对于即便是可以获取串号的手机来说,也仅仅限于进行了签名的应用程序才可以获得手机串号。
在诺基亚手机中,我们可以这样获取手机串号: System.getProperty("com.nokia.mid.imei")
在Series60平台的手几种, ......