本文概述
- 利用Java包
- 简单的java包的例子
- 如何编译java包
- 如何运行java包程序
- 如何访问包从另一个包吗?
- 进口packagename . *包的例子
- 由进口package.classname包的例子
- 示例包的导入完全限定名称
- 分装在java中
- 如何将类文件发送到另一个目录或开车吗?
用java包可以分成两种形式,内置包和用户定义的包。
有很多内置包如java、lang,awt、javax,net、io、util、sql等。
在这里,我们将创建和使用用户定义的详细学习包。
利用Java包1)Java包用于分类的类和接口,以便他们可以很容易地维护。
2)Java包提供保护。
3)Java包删除命名冲突。
简单的java包的例子包的关键字用于在java中创建一个包。
//save as Simple.java
package mypack;
public class Simple{
public static void main(String args[]){
System.out.println("Welcome to package");
}
}
如何编译java包如果你不使用任何IDE,你需要遵循的语法如下:
javac -d directory javafilename
例如
javac -d . Simple.java
【Java包package】– d开关指定的目的地,将生成的类文件。你可以使用任何目录名称/家庭(在Linux),d: / abc(在windows)等。如果你想保持包在相同的目录中,你可以使用。(点)。
如何运行java包程序你需要使用完全限定名称如mypack。简单的运行类等。
To Compile: javac -d . Simple.java |
To Run: java mypack.Simple |
Output:Welcome to package
-d是一个开关,告诉编译器把类文件放在哪里,也就是说,它代表目的地。表示当前文件夹。
如何访问包从另一个包吗?有三种方法来访问包从包的外部。
- 导入包。*;
- 进口package.classname;
- 完全限定名称。
导入关键字用于使另一个包的类和接口可以访问当前包。
进口packagename . *包的例子
//save by A.java
package pack;
public class A{
public void msg(){System.out.println("Hello");
}
}
//save by B.java
package mypack;
import pack.*;
class B{
public static void main(String args[]){
A obj = new A();
obj.msg();
}
}
Output:Hello
2)使用packagename.classname如果你导入包。classname声明类的包只被访问。
由进口package.classname包的例子
//save by A.javapackage pack;
public class A{
public void msg(){System.out.println("Hello");
}
}
//save by B.java
package mypack;
import pack.A;
class B{
public static void main(String args[]){
A obj = new A();
obj.msg();
}
}
Output:Hello
3)使用完全限定名称如果你只使用完全限定名称然后宣布将访问类的包。现在没有需要进口。但是你需要使用完全限定名称每次当你访问类或接口。
时通常使用两个具有相同的类名如java包。util和java。sql包包含Date类。
示例包的导入完全限定名称
//save by A.java
package pack;
public class A{
public void msg(){System.out.println("Hello");
}
}
//save by B.java
package mypack;
class B{
public static void main(String args[]){
pack.A obj = new pack.A();
//using fully qualified name
obj.msg();
}
}
Output:Hello
注意:如果你导入一个包,子包不会被导入。如果你导入一个包,这个包的所有类和接口将导入不包括子包的类和接口。因此,你需要进口分装。
注意:程序的顺序必须包然后导入类。分装在java中包中包被称为“分包”。它应该创建进一步分类方案。
让我们看一个例子,太阳微系统研究名为java的一个包,包含了许多类系统、字符串、读者、作家、插座等等。这些类代表一个特定的群体如读者和作家为输入/输出操作类、套接字和ServerSocket类网络等等等等。所以,太阳subcategorized java包成子包,如朗净,io等,把输入/输出相关类在io包,服务器和考察类净包等等。
定义的标准包domain.company.package如com.srcmini。bean或org.sssit.dao。分包的例子
package com.srcmini.core;
class Simple{
public static void main(String args[]){
System.out.println("Hello subpackage");
}
}
To Compile: javac -d . Simple.java |
To Run: java com.srcmini.core.Simple |
Output:Hello subpackage
如何将类文件发送到另一个目录或开车吗?有一个场景,我想把的类文件。java源文件在类文件夹c:驱动器。例如:
//save as Simple.java
package mypack;
public class Simple{
public static void main(String args[]){
System.out.println("Welcome to package");
}
}
编译:
来源:e javac > d c:\ Simple.java职等
运行:
要从e:\source目录运行这个程序,你需要设置类文件所在目录的类路径。 |
e:\sources> set classpath=c:\classes; .; |
e: \ > java mypack.Simple来源 |
类路径开关可用于javac和java工具。
运行这个程序从e: \源目录,你可以使用java的类路径切换告诉在哪里寻找类文件。例如:
e: \来源> java类路径c: \ mypack.Simple类
Output:Welcome to package
加载类文件或jar文件的方法
加载类文件有两种方式:临时的和永久的。
- 临时通过设置类路径的命令提示符类开关
- 永久通过设置classpath环境变量的创建jar文件,包含所有类文件,复制jar文件在jre / lib / ext文件夹。
//save as C.java otherwise Compilte Time Errorclass A{}
class B{}
public class C{}
如何把两个公共类放在一个包吗?
如果希望将两个公共类放在一个包中,可以使用包含一个公共类的两个java源文件,但要保持包名不变。例如:
//save as A.javapackage srcmini;
public class A{}
//save as B.javapackage srcmini;
public class B{}
推荐阅读
- Java访问修饰符
- Java接口
- Java抽象类和接口的区别
- Java抽象类
- Java instanceof操作符
- Java静态绑定和动态绑定
- Java多态性
- Java实例初始化块
- Java final关键字