本帖最后由 技术奇奇 于 2016-4-17 11:59 编辑
package(☆☆):
就是文件夹,将字节码(.class)进行分类存放
###10.02_面向对象(包的定义及注意事项)(掌握)
包的写法(☆☆☆☆)
package 包名;
多级包用.分开。
作用:
A:区分同名的类
B:对类进行分类管理
a:按照功能分
b:按照模块分
包的注意事项(☆)
A:package语句必须是程序的第一条可执行的代码
B:package语句在一个java文件中只能有一个
C:如果没有package,默认表示无包名
案例:在一个java文件里面
package com.heima;
class Demo1_Package {
public static void main(String[] args) {
}
}
//package com.heima; //报错: 因为 package语句必须是程序的第一条可执行的代码
所以package语句在一个java文件中只能有一个
//class Package {
//}
###10.03_面向对象(带包的类编译和运行)(掌握)
带包的类的编译和运行(☆):
编译:javac -d . Person_Test.java (javac -d . 类名.java)
比如:在D盘下有Person_Test.java ,在D盘下打开dos命令行 执行 javac -d . Person_Test.java 命令
就会生成一个D:/com/heima/Person_Test.class
运行:java com.heima.Person_Test ((当前路径下,不要跑到包里面去运行)java 类的全路径名)
比如:在D盘下打开dos命令行(当前路径下,不要跑到D:/com/heima去打开dos) 执行java com.heima.Person_Test
不同包下类之间的访问(☆)
1)类的全路径名 变量名 = new 类的全路径名();
案例:一个java文件里面是Demo1_Package类
package com.heima;
class Demo1_Package {
public static void main(String[] args) {
//Person p = new Person(); //报错:不同包下的类不能直接访问
com.baidu.Person p = new com.baidu.Person(); //类的全路径名
}
}
另一个java文件里面是 Person类
package com.baidu;
class Person {
String name;
int age;
}
2)package和class之间 加入一个"import 包;"然后 ,就可以直接访问不同包下的类了
案例:一个java文件里面是Demo1_Package类
package com.heima;
import com.baidu.Person; //导包
class Demo1_Package {
public static void main(String[] args) {
Person p = new Person(); //导包后,就能直接访问了
}
}
另一个java文件里面是 Person类
package com.baidu;
class Person {
String name;
int age;
}
|
|