【前端学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 分钟前
Hot 100 --- LRU 缓存
java·数据结构·算法·leetcode·链表·缓存·哈希
花生了什么事o3 分钟前
Java 线程池:从参数到拒绝策略
java·jvm
长孙豪翔14 分钟前
引发事件的问题
java·linux·数据库
happyprince16 分钟前
09-vLLM KV Cache 系统完整分析
java·spring·vllm
掉鱼的猫17 分钟前
ReActAgent 使用指南:构建会思考、能行动的 AI Agent
java·llm·agent
pp起床18 分钟前
黑马点评 - 短信验证码登录实现
java·开发语言·tomcat
CodeStats29 分钟前
《源纹天书》第121-125章:源匠归来——全栈重构与归元圣域的2.0时代
java·开发语言·源纹天书
AI人工智能+电脑小能手30 分钟前
【大白话说Java面试题 第154题】【06_Spring篇】第14题:Spring 支持的 Bean 作用域
java·开发语言·spring·面试
wuminyu38 分钟前
markword在高并发场景下变化剖析
java·linux·c语言·jvm·c++
组合缺一1 小时前
用 ChatModel 构建 LLM 驱动的 Java 应用
java·开发语言·ai·llm·solon·rag