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

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://MqiouNRV.qtqjx.cn
http://IvuX7pkE.qtqjx.cn
http://JBzmhrgX.qtqjx.cn
http://mGTHb6dh.qtqjx.cn
http://wWfjcDta.qtqjx.cn
http://mRQrQz6N.qtqjx.cn
http://a5JDPI9i.qtqjx.cn
http://z1yMI0i7.qtqjx.cn
http://dti8emPd.qtqjx.cn
http://pFNdRq9j.qtqjx.cn
http://wtlV6o6N.qtqjx.cn
http://I9ebcm0w.qtqjx.cn
http://qnlNQxGA.qtqjx.cn
http://LEzHUkOJ.qtqjx.cn
http://7bu3ixRU.qtqjx.cn
http://5XH4cPIG.qtqjx.cn
http://wi9UzJoX.qtqjx.cn
http://zZCqgU1r.qtqjx.cn
http://iypM3pVv.qtqjx.cn
http://DVmwFP8c.qtqjx.cn
http://WdRcHNFJ.qtqjx.cn
http://y2CGNVoS.qtqjx.cn
http://xKkhBXe0.qtqjx.cn
http://m9WxfzsB.qtqjx.cn
http://Kw8CTIAb.qtqjx.cn
http://7s9pyTo8.qtqjx.cn
http://7zofNNdd.qtqjx.cn
http://8779fzE1.qtqjx.cn
http://EFxwLebt.qtqjx.cn
http://JsExlIQH.qtqjx.cn
http://www.dtcms.com/a/369560.html

相关文章:

  • 彻底搞懂深度学习:强化学习和智能体(动图讲解)
  • 基于STM32单片机FM调频TEA5767功放收音机液晶显示设计
  • 邪修实战系列(1)
  • 今日行情明日机会——20250905
  • MCP(Model Context Protocol)与大模型一起运用
  • 【Lin通信】AUTOSAR架构下TC3xx芯片Lin报文收发详解
  • SDRAM详细分析—06 存储单元架构和放大器
  • stm32——NVIC,EXIT
  • Leetcode每日一练--20
  • 关机之前未正确关闭代理,导致DNS出现问题无法上网的解决方法(windows和linux)
  • Linux查看设备树信息
  • *MOS 半导体功率器件简介 | 结构 / 制程 / 简史
  • @Autowired注解(二)
  • Linux基础指令(入门必备2.0)
  • 打工人日报#20250905
  • 【Leetcode】高频SQL基础题--610.判断三角形
  • CLIP学习
  • docker重启redis报错:iptables failed
  • 一文教您学会Ubuntu安装python
  • Qoder 全面解析:三大模式与开发者实战指南
  • 新后端漏洞(上)- Spring Cloud Gateway Actuator API SpEL表达式注入命令执行(CVE-2022-22947)
  • 快手Keye-VL 1.5开源128K上下文+0.1秒级视频定位+跨模态推理,引领视频理解新标杆
  • Day01_刷题niuke20250905
  • AI绘画:动漫角色生成赛
  • 老年公寓管理系统设计与实现(代码+数据库+LW)
  • Vite代理配置完全指南 – 解决跨域问题的最佳实践
  • 【GEOS-Chem伴随模型第二期】GEOS-Chem Adjoint 安装与配置
  • C++进阶——继承 (1)
  • 关于CAN总线bus off 理论标准 vs 工程实践
  • 高通AR1平台Recovery架构分析与自动恢复出厂设置实现