java中的包是什么?为什么要使用java包
java中的包是什么?
在Java中的包是一种封装一组类、子包和接口的机制,可用于组织一组相关的类和接口。从概念上讲,我们可以将包视为类似与计算机上的不同文件夹:可以将HTML页面保留在一个文件夹中,将图像保存在另一个文件夹中,将脚本或将脚本或应用程序保存在另一个文件夹中。
因为用Java编程语言编写的软件可以由成百上千个单独的类组成,所以通过将相关的类和接口放到包中来保持组织是有意义的。
在Java中有两种类型的包:内置包和我们自己创建的包(也称为用户定义包)
使用java包的好处
这是为什么使用Java包的原因:
1、可重用性。在java中开发项目时,我们常常觉得我们的代码中一遍又一遍地写的东西很少。使用包,您可以在包内部以类的形式创建这样的东西,并且只要您需要执行相同的任务,只需导入该包并使用该类。
2、用于对类和接口进行分类,以便更好的组织和维护它们。在我们有数百个类的大型Java项目中,总是需要将相似类型的类分组到一个有意义的包名中,以便您可以更好地组织项目,并在需要时快速定位它并使用它,这提高了效率。
3、防止命名冲突。我们可以在不同的包中定义两个具有相同名称的类,以避免名称冲突,我们就可以使用包
Java包的相关知识:
包是一组相关类的容器,其中一些类是可访问的,而其他类是出于内部目的而保留的。
包怎么运作?
包名称和目录结构密切相关。例如,如果包名是college.staff.cse,那么有三个目录,college,staff和cse,这样cse存在于staff中,staff就在college里。此外,目录College可通过CLASSPATH变量访问,即CLASSPATH中存在college的父目录路径。我们的想法是确保类很容易被找到。
包的命名约定:包以域名的相反顺序命名,即org.geeksforgeeks.practice。例如,在大学里,推荐的约定是college.tech.cse,college.tech.ee,college.art.history等。
向包中添加类:我们可以使用程序顶部的包名称将更多类添加到创建的包中,并将其保存在包目录中。我们需要一个新的java文件来定义一个公共类,否则我们可以将新类添加到现有的.java文件中并重新编译它。
子包:另一个包内的包是子包。默认情况下不会导入它们,必须显式导入它们。此外,子包的成员没有访问权限,即它们被视为受保护和默认访问说明符的不同包。
Java中的包类型
在java中有两种类型的包。
1、内置包:已经在java中被定义好的包,如:java.io. *,java.lang.*等被称为内置包。
2、用户定义的包:我们自己创建的包,被称为用户定义的包。
Java包的简单示例:
1、在java中创建包
我们可以使用package关键字在Java创建包。
//保存 Simple.java package mypack; public class Simple{ public static void main(String args[]){ System.out.println("欢迎来到包装"); } }
2、编译创建好的包
如果你不使用任何IDE,则需要遵循以下语法:
javac -d 目录 javafilename
例如:
javac -d . Simple.java
-d开关指定放置生成的类文件的目标位置。你可以使用任何目录名,如/ home(如果是Linux),d:/ abc(如果是windows)等。如果你想将包保存在同一目录中,你可以使用“.”(点)。
3、运行java包
我们需要使用完全限定的名称,例如mypack.Simple等来运行该类。
编译:
javac -d . Simple.java
运行:
java mypack.Simple
运行输出:
总结:以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。
以上就是java中的包是什么?为什么要使用java包的详细内容,更多请关注其它相关文章!
上一篇: angularJS模块化技术详解
推荐阅读
-
Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析
-
Java日期时间API系列11-----Jdk8中java.time包中的新的日期时间API类,使用java8日期时间API重写农历LunarDate
-
Java日期时间API系列9-----Jdk8中java.time包中的新的日期时间API类的Period和Duration的区别
-
Java日期时间API系列30-----Jdk8中java.time包中的新的日期时间API类,减少时间精度方法性能比较和使用。
-
java中重写equals()方法的时候为什么要重写hashCode()方法?
-
java~gradle构建公用包并上传到仓库~使用私有仓库的包
-
使用java2word包中的Document类来创建新文档
-
使用java2word包中的Document类来创建新文档
-
java中如何直接读取zip压缩包目录中的各个文件的名字
-
idea ssm项目java程序向串口发送指令并且使用十六进制 rxtx包的方法