学习Java以来,第一次感觉稍微有点不好理解的,下面说说吧。
存在意义:
包的存在就是为更好的组织结构
包的创建:
只要在程序的最前面加入 Package ******,就可以了,一般都喜欢写 com.carter.animal 等等之类的东西,刚开始以为这个东西是一个很复杂的东西,其实就是代表的一个目录结构用的,
如果刚开始理解不了的话,完全可以不用写这么多的".",我就是被这个点给搞糊涂了。
写了这句话之后,Eclipse会帮你把上面包名字也给改成对用的:
加上这玩意之后,好像类和函数都得声明成public的。
包的调用:
我现在会用的只要两种方法:
1.使用 import 关键字,例如:import com.carter.test.*;
2.直接在调用类的时候使用: com.carter.animal.animal,好暴力的办法啊
好了先看一下代码之间的关系结构,然后再看源码:
好,看看源码结构吧:
package com.carter.animal;
public class animal
{
public void display()
{
System.out.println("wang.....wang.....");
}
}
animal
package com.carter.dream;
public class Human
{
// constructor 1
public Human(int h)
{
System.out.println("construct 1 " + h);
}
// constructor 2
Human(int h, String str)
{
System.out.println("construct 2 " + h + " " + str );
}
}
package com.carter.dream;
import com.carter.test.*;
public class main
{
public static void main(String[] args)
{
// import了对应的包,然后使用类
test aTest = new test();
aTest.Nothing();
// 没有import,直接就使用这样的方式来进行调用类
com.carter.animal.animal adog = new com.carter.animal.animal();
adog.display();
}
}
package com.carter.test;
import com.carter.dream.*;
public class test
{
public test()
{
System.out.println("test class");
}
public void Nothing()
{
int i;
i = 9;
}
Human human = new Human(1);
}
test
输出结果:
construct 1 1
test class
wang.....wang.....
转载于:https://blog.51cto.com/xdtesting/1869738