关于java语言中的 package和 import机制:
①为什么要使用 package?
package是java中包机制。包机制的作用是为了方便程序的管理
不同功能的类分别存放在不同的包下。(按照功能划分的,不同的软件包具有不同的功能
②package怎么用?
package是一个关键字,后面加包名。例如:
package com. bjpowernode javase chapter17;
注意: package语句只允许出现在java源代码的第一行
③包名有没有命名规范?有
一般都采用公司域名倒序的方式(因为公司域名具有全球唯一性
包名命名规范:
公司域名倒序+项目名+模块名+功能名
举例
package com.bjpowernode.Javase.chapter17;
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World");
}
}
包机制idea方法
src右键 new->pakeage->com.bjpowernode.javase.chapter17
cmd方法
类名是:com. bjpowernode. Javase. chapter17.HelloWorld
步骤1
javac -d . HelloWorld.java(生成class文件)
步骤2
java com.bjpowernode.javase.chapter17.HelloWorld
Test01和HelloWorld在同一包下
package com.bjpowernode.javase.chapter17;
public class Test01{
public static void main(String[] args){
com.bjpowernode.javase.chapter17.HelloWorld hw=new com.bjpowernode.javase.chapter17.HelloWorld();
System.out.println(hw);
HelloWorld hw2=new HelloWorld();
System.out.println(hw2);
}
}
此时Test01和HelloWorld在同一个包下HelloWorld hw2=new HelloWorld();所以前面报名可以省略
Test02和HelloWorld不在同一包下
package com;
//import com.bjpowernode.javase.chapter17.HelloWorld;
import com.bjpowernode.javase.chapter17.*;//还可以采用*方式运行
public class Test02{
public static void main(String[] args){
/*com.bjpowernode.javase.chapter17.HelloWorld hw=new com.bjpowernode.javase.chapter17.HelloWorld();
System.out.println(hw);
com.bjpowernode.javase.chapter17.HelloWorld hw2=new com.bjpowernode.javase.chapter17.HelloWorld();
System.out.println(hw2);*/
HelloWorld hw=new HelloWorld();
System.out.println(hw);
}
}
解释Scanner机制
import什么时候使用?
A类中使用B类
A和B类都在同一个包下。不需要 import
A和B类不在同一个包下。需要使用 import
java.lang这个包下的类不需要使用 import导入自动导入除了该包的文件夹
import怎么用?
import语句只能出现在 package语句之下,class声明语句之上
import语句还可以采用星号的方式
package com.bjpowernode.javase.chapter17;
import java.util.*;
public class Test03{
public static void main(String[] args){
//java.util.Scanner s=new java.util.Scanner(System.in);
Scanner s=new Scanner(System.in);
String str=s.next();
System.out.println("你的名字是"+str);
}
}
idea设置
同上述,有手就行
总结
- package
package出现在java源文件第一行
带有包名怎么编译? javac -d . xxx.java
怎么运行?java完整类名 - import
import什么时候不需要?
java.lang不需要
同包下不需要
其它一律都需要
怎么用?
import 完整类名;
import 包名.*;