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深度历险】
为便于说明,先制作
相关文档:
Java提供了一套机制来动态执行方法和构造方法,以及数组操作等,这套机制就叫——反射。反射机制是如今很多流行框架的实现基础,其中包括Spring、Hibernate等。原理性的问题不是本文的重点,接下来让我们在实例中学习这套精彩的机制。
1. 得到某个对象的属性
public Object getProperty(Object owner, String f ......
JAVA--java.io.InvalidClassException急解
字号:T|T
JAVA--java.io.InvalidClassException急解
java.io.InvalidClassException: message.RegisterMessage; local class incompatible: stream classdesc serialVersionUID = 5540404719929042644, local class serialVersionUID = -8915824483106432775
回答:
最佳 ......
一、IO流的三种分类方式
1.按流的方向分为:输入流和输出流
2.按流的数据单位不同分为:字节流和字符流
&n ......
1、什么是存储过程。存储过程是数据库服务器端的一段程序,它有两种类型。一种类似于SELECT查询,用于检索数据,检索到的数据能够以数据集的形式返
回给客户。另一种类似于INSERT或DELETE查询,它不返回数据,只是执行一个动作。有的服务器允许同一个存储过程既可以返回数据又可以执行动作。
2、什么时候需要用存储过程
......