网站首页 > 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创建包。
1
2
3
4
5
6
7
//保存 Simple.java
package mypack;
public class Simple{
public static void main(String args[]){
System.out.println("欢迎来到包装");
}
}
2、编译创建好的包
如果你不使用任何IDE,则需要遵循以下语法:
1
javac -d 目录 javafilename
例如:
1
javac -d . Simple.java
-d开关指定放置生成的类文件的目标位置。你可以使用任何目录名,如/ home(如果是Linux),d:/ abc(如果是windows)等。如果你想将包保存在同一目录中,你可以使用“.”(点)。
3、运行java包
我们需要使用完全限定的名称,例如mypack.Simple等来运行该类。
猜你喜欢
- 2024-10-20 使用idea将Java项目打成Jar包,之后生成exe可执行文件
- 2024-10-20 Java并发包,你需要掌握的atomic(java并发实现原理)
- 2024-10-20 一款易于使用的Java验证码软件包(javaee验证码)
- 2024-10-20 Java 覆盖 jar 包内的方法(java覆盖第三方jar中类文件)
- 2024-10-20 都说Java程序占内存多,那么Java对象究竟占多少内存?
- 2024-10-20 JAVA学习笔记之导包(java中的导包命令是哪个)
- 2024-10-20 简单介绍Java 的JAR包、EAR包、WAR包区别
- 2024-10-20 Java juc包学习笔记(java的juc包)
- 2024-10-20 Java带包结构调用命令行运行编译(java怎么使用包)
- 2024-10-20 Java并发包-atomic包-让您彻底掌握AtomicInteger源码
你 发表评论:
欢迎- 07-21如何将 iPhone 中的联系人导出到 Excel/CSV?
- 07-21sql查询的字段数据中有逗号。放到csv文件会分开,如何解决?
- 07-21在 WebAPI 里生成 csv zip 文件(webapi怎么发布在iis上)
- 07-21如何把csv格式转换成Excel格式(csv格式怎么转换)
- 07-21如何将高程导出为XYZ或CSV高程点(如何将高程数据导入cad)
- 07-21使用python把csv汇总成excel(python怎么将csv文件中的列存入列表)
- 07-21解决PHP导出CSV文件中文乱码问题(php导出excel文件)
- 07-21使用vba将Excel 文件转成 CSV 文件
- 最近发表
-
- 如何将 iPhone 中的联系人导出到 Excel/CSV?
- sql查询的字段数据中有逗号。放到csv文件会分开,如何解决?
- 在 WebAPI 里生成 csv zip 文件(webapi怎么发布在iis上)
- 如何把csv格式转换成Excel格式(csv格式怎么转换)
- 如何将高程导出为XYZ或CSV高程点(如何将高程数据导入cad)
- 使用python把csv汇总成excel(python怎么将csv文件中的列存入列表)
- 解决PHP导出CSV文件中文乱码问题(php导出excel文件)
- 使用vba将Excel 文件转成 CSV 文件
- python爬虫25 | 爬取的数据怎么保存?CSV了解一下
- MySQL 导出数据(mysql 导出数据 判断成功)
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)