java中的import和package机制

最近学了点java基础,在遇到import和package部分时看了几遍视频,还是有点糊涂,今天亲自做了一下实验,恍然大悟,下面分享给大家:

java的package的作用类似于c++的namespace的作用,防止名字相同的类产生冲突,这不是我们想要的。看一下package的使用。

我在路径为E:\java\testpackage\下写一个cat.java文件如下:

package com.cxue;
public class Cat {


}

编译通过下面我们在相同的目录下写一个Dog类来掉用Cat类如下:

public class Dog {
  public static void main(String[] args) {
  
    Cat c = new Cat();
  }
    
}

我们编译出现了下面的错误:

虽然我们把两个类放到了一起但不能直接访问了,为什么呢,就像两个不错的哥们,之前没有package的时候相当于”默认是可以在一起混的“,要打算用他的东西,直接用new做一个就行了,用了package就不一样了,打上标签,就像我们现实生活中毕业了,各分两地,再没有任何通信方式的情况下我们只能去他指定的城市去找他(尽管我们在一个城市,因为我们“没有联系”不知道,就像我们现在这种情况在一个相同的文件夹下,即使在一起),告诉他我要用一下你的某些东西,我们才能new制作一个才行呀。

看样子我只能给放到标签的位置(当前目录com下cxue里),我们在进行编译

还是出了问题,这是因为我们在使用Cat类时还采用原来的方式,打上标签了就要换种方式,就像我要找到哥们必须要比之前在一起时费点事,我改变为下面的方式:

public class Dog {
  public static void main(String[] args) {
  
    com.cxue.Cat c = new com.cxue.Cat();
  }
    
}

编译通过如下:

但这样太麻烦了,不如我们提前告诉人家一声,以后就直接用,顺其自然import排上用场了。

再次修改代码如下:

import com.cxue.*;
public class Dog {
  public static void main(String[] args) {
  
    Cat c = new Cat();
  }
    
}

编译通过。

完毕:

 

 

posted @ 2013-04-14 18:55  onlycxue  阅读(10654)  评论(3编辑  收藏  举报