package是什么
  package好比java用来组织文件的一种虚拟文件系统。package把源代码.java文件,.class文件和其他文件有条理的进行一个组织,以供java来使用。
  源代码的要求最严格,而一旦源代码自己声明了在哪个package路径之下,class也就有了自己在哪个package下面的信息,就是那句程序开头的"package xx.xx.xx"。package可以用来区分同样名称的.class的类,
  .java文件和.class不是一对一,而是一对多的关系,不过.java和public的类是一对一的。所有这些.class,都由这个.java开头的package语句来确定自己在package中的位置。
  对于java来讲,所有需要的程序和资源都要以package的形式来组织和读取。package的出现可以让类文件(运行文件)和源文件相分离。
我刚开始运行pack.D文件时,错误提示找不到加载类,原因是根本没有pack这个文件夹,一种比较直接的解决方法就是新建一个pack文件夹


当然你不可能每次都重新建一个文件夹,你可以指定一个盘的文件夹,比如e:\myclass,然后javac -d e:\myclass   D.java,这时会自动生成一个pack文件夹。接着我就运行了,发现运行文件不存在,仔细想一下,class文件已经被放在了e盘;你可以set classpath=e:\myclass,或者进入E盘操作。


import是什么
  import只是一种让你偷点懒少打字的方法,绝对不会影响你的classpath,它只是一种省事的办法。我个人的感受有点像c语言里的define,可以省去多次续写和修改的麻烦。如果你不用import,你用Cristiano这个类,就需要写java.Ronaldo.Cristiano。而用了import的话以后代码中写Cristiano就可以了,省事。import可以使用通配符*,这里不再赘述。我讲一下我写java时遇到的问题,首先在一个包中调用另一个包中的类时,要记住类的名是包名.类名; 一个包中的类要被访问,必须要有足够大的权限,类公有后,被访问的成员也要公有。

  不过,当你觉得你对package和import依旧云里雾里,这些你都不用在意;当你下了IDEA之后,这些你都不用操心,因为IDEA会自动帮你做好。

  王国维在《人间词话》中这样写道,“雾里看花,终隔一层。”只有对自己疑惑的内容抽丝剥茧,才可寻得其中的奥妙。

雾里看花终隔一层——探析package和import的更多相关文章

  1. 中文分词工具探析(一):ICTCLAS (NLPIR)

    1. 前言 ICTCLAS是张华平在2000年推出的中文分词系统,于2009年更名为NLPIR.ICTCLAS是中文分词界元老级工具了,作者开放出了free版本的源代码(1.0整理版本在此). 作者在 ...

  2. 深入探析koa之中间件流程控制篇

    koa被认为是第二代web后端开发框架,相比于前代express而言,其最大的特色无疑就是解决了回调金字塔的问题,让异步的写法更加的简洁.在使用koa的过程中,其实一直比较好奇koa内部的实现机理.最 ...

  3. 开源中文分词工具探析(三):Ansj

    Ansj是由孙健(ansjsun)开源的一个中文分词器,为ICTLAS的Java版本,也采用了Bigram + HMM分词模型(可参考我之前写的文章):在Bigram分词的基础上,识别未登录词,以提高 ...

  4. matplotlib工具栏源码探析三(添加、删除自定义工具项)

    转: matplotlib工具栏源码探析三(添加.删除自定义工具项) matplotlib工具栏源码探析二(添加.删除内置工具项)探讨了工具栏内置工具项的管理,除了内置工具项,很多场景中需要自定义工具 ...

  5. 构造器与this、package、import关键字的使用

    构造器一.构造器的作用: 1.创建对象 2.初始化对象的信息 二.说明: 1.如果没有显式的定义类的构造器的话,则系统默认提供一个空参的构造器 2.定义构造器的格式:权限修饰符 类名(形参列表){} ...

  6. 中文分词工具探析(二):Jieba

    1. 前言 Jieba是由fxsjy大神开源的一款中文分词工具,一款属于工业界的分词工具--模型易用简单.代码清晰可读,推荐有志学习NLP或Python的读一下源码.与采用分词模型Bigram + H ...

  7. 【20140113】package 与 import

    一个完整的java源程序应该包括下列部分: package语句: //该部分至多只有一句,必须放在源程序的第一句 import语句: public classDefinition: //公共类定义部分 ...

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

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

  9. Java跟Javac,package与import

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

随机推荐

  1. 初始化lpc2106开发工程

    单片机型号:lpc2106.Init.s:初始化pc指针和sp指针.    AREA    Init, CODE, READONLY    IMPORT  test1_main    EXPORT  ...

  2. BZOJ3290 : Theresa与数据结构

    CANCEL操作可以看作删点,X坐标可以离散化 将询问按Z坐标差分,转化成两个求Z<=某个数的和的询问 将操作CDQ分治 每次将前一半的修改.后一半的查询按照Z坐标排序 然后扫描线,每到一个询问 ...

  3. 【POJ】1062 昂贵的聘礼(spfa)

    http://poj.org/problem?id=1062 此题一开始果断想到暴力.. 但是n<=100果断不行. 一看题解,噗!最短路... 构图很巧妙. 每一个物品对应的所需物品相当于一个 ...

  4. JAVA操作COOKIE

    JAVA操作COOKIE 1.设置Cookie Cookie cookie = new Cookie("key", "value"); cookie.setMa ...

  5. QQ空间分享功能(二)

    http://sns.z.qq.com/tools/share/demo_html.jsp  手机QQ空间分享功能接入指引: 1.请求地址: http://sns.z.qq.com/share 2.请 ...

  6. html5调用手机摄像头,实现拍照上传功能

    今天做手机网站,想实现手机扫描二维码功能.首先实现在浏览器中调用手机摄像头,实现拍照功能并且把拍下的照片显示在页面并上传到服务器上,然后再在服务器端进行分析. 首先实现在浏览器中调用摄像头,当然用现在 ...

  7. vc中openGL的安装

    安装过程: 第一步:选择一个编译环境 现在Windows系统的主流编译环境有Visual Studio,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的.但这里我们 ...

  8. PHP多重判断删除文件函数

    <?function delete_file($file) {     if (file_exists($file))     {         $delete = chmod ($file, ...

  9. NBOJv2 Problem 1009 蛤玮的魔法(二分)

    Problem 1009: 蛤玮的魔法 Time Limits:  1000 MS   Memory Limits:  65536 KB 64-bit interger IO format:  %ll ...

  10. [英语学习]儿童英语 sesamestreet

    最近在和我的孩子学习汉语,用在自己学习英语方面,就是多看小故事,多看儿歌. 以前孙小小分享过这个网站www.sesamestreet.org 现在找出来看看,还是很不错的. 搜索elbows and ...