当前位置: 首页 > web >正文

Java中的包

包是为了解决类同名的问题而诞生的。在Java虚拟机执行的时候,jvm只看完整类名,因此只要包名不同,类就不同。

没有包名的class使用默认包。

我们需要按照包结构把Java文件组织起来。包名对应文件夹的名字。即所有Java文件对应的目录层次要和包的层次一致。

编译后的.class文件也需要按照包结构存放。

包作用域

位于同一个包的类,可以访问包作用域的字段和方法。不用public、protected、private修饰的字段和方法就是包作用域。

import关键字

使用一个类,可以有如下三种方式:

  • 使用完整类名
  • 使用import关键字单独导入该类
  • 使用import关键字导入该类所在的包

推荐使用第二种。

还可以使用import关键字导入一个类的静态字段和方法。

package main;// 导入System类的所有静态字段和静态方法:
import static java.lang.System.*;public class Main {public static void main(String[] args) {// 相当于调用System.out.println(…)out.println("Hello, world!");}
}

当编译器遇到一个类名时,采用如下顺序确定该类:

  1. 使用完整类名时就直接根据完整类名查找该class

  2. 使用简单类名时,按下面的顺序依次查找:

    1. 查找当前package中是否存在该class
    2. 查找import的包中是否有该类
    3. 查找java.lang包中是否包含这个class

因此,编写class的时候,编译器会自动帮我们做两个import动作:

  • 默认自动import当前package的其他class;
  • 默认自动import java.lang.*。
http://www.xdnf.cn/news/20394.html

相关文章:

  • 文心快码已支持Kimi-K2-0905模型
  • 每日一练001.pm
  • 打工人日报#20250905
  • 分享个C++线程池的实现源码
  • 【开题答辩全过程】以 基于Springboot电脑维修平台整合系统的设计与实现为例,包含答辩的问题和答案
  • daily notes[10]
  • 各种背包问题简述
  • Interior AI-AI驱动的室内设计工具
  • 变频器【简易PLC】功能中的时间问题
  • 神马 M63S+ 438T矿机评测:SHA-256算法高效能挖矿利器
  • 无名信号量
  • 探索Xilinx GTH收发器掉电与回环功能
  • Coze源码分析-资源库-删除提示词-前端源码
  • Nacos 启动
  • 【完整源码+数据集+部署教程】乡村道路植物与障碍物识别图像分割系统源码和数据集:改进yolo11-OREPA
  • 当前的大部分的AI,可能已经分到了传统那桌了!Causal AI:颠覆传统机器学习的下一代人工智能技术,让AI真正理解“为什么“!
  • python + flask 3 简单的授权验证(基于文件)
  • 小场景大市场:猫狗识别算法在宠物智能设备中的应用
  • 如何解决 OutOfMemoryError 内存溢出 —— 原因、定位与解决方案
  • 1 分布式事务在 Java Web 项目中的实践
  • 分库分表方案中出现数据倾斜问题怎么解决
  • MySQL知识回顾总结----数据类型
  • 143. 重排链表
  • 2025.09.05 用队列实现栈 有效的括号 删除字符串中的所有相邻重复项
  • 2025高教社数学建模国赛C题 - NIPT的时点选择与胎儿的异常判定(完整参考论文)
  • MySQL数据库——事务、索引和视图
  • Linux基础指令(入门必备2.0)
  • B.50.10.06-NoSQL数据库与电商应用
  • 深度学习:CNN 模型训练中的学习率调整(基于 PyTorch)
  • nVisual从入门到精通—应用实例