【前端学java】JAVA中的packge与import

packge与import示例

Java中,使用package关键字来声明一个类所属的包:

java 复制代码
package myapp;

public class MyClass {
  // 类的实现...
}

上述代码中,MyClass类被声明为属于myapp的包。在其他的代码中使用该类时,需要使用完整的包名来引用它。例如:

vbnet 复制代码
import myapp.MyClass;

public class AnotherClass {
    MyClass myClass = new MyClass();
}

packge

在Java中,包(Package)是用于组织和管理类和接口的一种机制。它通过提供一个命名空间,可以将相关的类和接口组织在一起,并避免命名冲突。

简单来说,packge声明了某个类的文件路径,它的语法是这样的

java 复制代码
package 路径.路径.路径.类名;
// 如
package java.util.TestClass

包的命名规则

包的命名规则一般是使用小写字母,多个单词之间用点号(.)分隔。在IDEA编译器中,我们定义一个类时,packge的声明是编译器帮我们完成的。

包的声明规则

  • 一个类可以没有包,也就是在一个文件中,可以不声明包的路径(不声明,其他文件不能引入)
  • package不可以在一个源码文件中多次使用,如下图package top.a;第二次引入时报错

包的区分

Java中存在不同包的相同名称类,可以使用包进行区分。比如,Date存在两个包中

声明时,可以使用包进行区分(类前加包的路径)

包路径的省略

java中提供了很多内置的包

比如,我们使用的String 类就是Java中的一个内置包。所以,String类的实际使用应该是这样

java 复制代码
java.lang.String name ="shixiaoshi"

在Java中,有一些常用的包是可以直接使用简单名称,而无需使用完整的包路径的,如

  • java.lang:这个包是Java语言的核心包,其中包含了一些基本的类和接口。例如,String、Integer、System等类在使用时可以直接使用简单名称,而不需要写完整的包路径。
  • java.util:这个包包含了 Java 提供的各种实用工具类,例如集合类(比如List和Map)、日期和时间类(比如Date和Calendar)等。
  • java.io:这个包包含了 Java 提供的用于输入输出操作的类和接口,例如File、InputStream和OutputStream等。
  • java.math:这个包包含了 Java 提供的用于高精度数值计算的类和方法,例如BigInteger和BigDecimal等。

import

import可以快速从其他文件导入一个类,这和前端框架中的import功能是一致的

java 复制代码
package top.a;
import java.util.Date;

public class test {
    public static void main(String[] args) {
        new Date();
    }
}

上述代码中,我们引入了java.util.Date这个类,在程序中直接使用了这个类。

import的代码位置

注意,import只能写在package和class之间

import的通配语法

java 复制代码
import java.util.*;

需要注意的是,虽然可以省略包路径,但在编写代码时建议使用完整的包路径,以提高代码的可读性和可维护性。

相关推荐
小蒜学长2 分钟前
编程语言在线学习平台的设计与实现(代码+数据库+LW)
java·spring boot·后端·编程语言在线学习平台·在线编码
步行cgn28 分钟前
Spring MVC 执行流程详解:一次请求的完整旅程
java·spring·mvc
增量星球34 分钟前
Spring AI 2.0 Tool Calling 到底怎么跑起来的:从 @Tool 到两次模型调用
java·agent·springai·ai coding
步行cgn39 分钟前
Spring MVC 九大核心角色详解:请求处理链路中的每一个关键组件
java·spring·mvc
智恒百亿44 分钟前
一台 5090 八卡服务器怎么分给一个团队用?多模型多任务的显存分配实战
java·大数据·人工智能
瑞码空间1 小时前
面向接口编程与开闭原则在模拟 JDBC 驱动中的应用
java·jdbc
Félix2511 小时前
Nacos学习笔记(SpringBoot/SpringCloud)
java·spring boot·spring
文丑颜不良啊1 小时前
LeetCode1581~1600题目解析
java·leetcode
香蕉大香蕉(06敬畏市场)1 小时前
MySQL 单点详解(06)
java·数据库·mysql·博客·实习
lqbzlll2 小时前
Spring Boot 开启虚拟线程后接口反而变慢了?4 个排查方向和对应修法
java·spring boot·后端