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

包、关键字、代码块

包、关键字、代码块

一、包(Package)

概念

  • 本质:包即文件夹,用于对不同功能的Java类进行分类管理,便于代码的后续维护

    包名规则

  • 命名格式:公司域名反写 + 包的作用(全英文小写,遵循"见名知意"原则)

    • 示例:com.company.utils(公司域名company.com反写为com.company,用途为工具类)

      全类名(全限定名)

  • 定义:类名前加上完整包名,用于区分不同包中的同名类

  • 示例:java.util.Date(包名java.util+ 类名Date

    导包(import)

  • 作用:导入指定包中的类,简化代码编写(无需重复书写全类名)

  • 语法:import 包名.类名;

    导包规则

  1. 同包内的类:直接使用,无需导包(优先在当前包中查找)

  2. java.lang包中的类:无需导包(如StringSystem等核心类)

  3. 其他包的类:必须导包才能简化使用

  4. 同名类冲突:若同时使用不同包的同名类,需对其中一个使用全类名(可只对另一个导包)

    • 示例:同时使用java.util.Datejava.sql.Date时,需显式书写其中一个的全类名

      二、final 关键字

      作用场景

  5. 修饰方法:被标记为最终方法,子类不可重写

  6. 修饰类:被标记为最终类,不能被其他类继承

  7. 修饰变量

    • 成为常量,只能赋值一次,提高代码可读性

    • 命名规范:

    • 单个单词:全部大写(如int MAX_VALUE

    • 多个单词:全部大写,单词间用下划线连接(如int MAX_ARRAY_SIZE

      特殊说明

  • 修饰引用类型变量时:

    • 变量存储的地址不可改变(不能指向新对象)

    • 但地址所指向的对象内部属性可以修改

      三、权限修饰符

      作用

      控制类成员(变量、方法、构造方法、内部类)的访问范围

      访问范围对比(从小到大)

      修饰符访问范围
      private仅同一个类内部可访问
      缺省(默认)同一个包中的其他类可访问
      protected不同包的子类可访问
      public任何包下的无关类均可访问

      四、代码块

      1. 局部代码块

  • 位置:方法内部的独立代码块

  • 示例

    publicstaticvoidmain(String[]args){{inta=10;System.out.println(a);// 10}inta=20;System.out.println(a);// 20}
  • 作用:提前结束变量生命周期(实际开发中很少使用,内存优化作用微小)

    2. 构造代码块

  • 位置:类的成员位置(类中方法外)

  • 示例

    publicclassStudent{privateStringname;// 构造代码块{System.out.println("学生");}publicStudent(){}publicStudent(Stringname){this.name=name;}}

特性:创建对象时优先于构造方法执行

适用场景:抽取多个构造方法中的重复代码

替代方案

  1. 核心代码放入一个构造方法,其他构造方法通过this()调用
  2. 将重复代码封装为普通方法,在构造方法中调用

3. 静态代码块

  • 定义:用static修饰的构造代码块(static { ... }
  • 特性
    • 随类的加载而自动执行
    • 仅执行一次(无论创建多少对象)
  • 适用场景:程序启动时初始化数据(避免重复初始化问题)

优势:相比直接初始化,可防止被反复调用时的重复初始化操作

http://www.zskr.cn/news/121373.html

相关文章:

  • 2025年十大河南祥雅防火玻璃制造商排行榜,新测评精选防火玻 - 工业推荐榜
  • vue3+vite+scss项目使用tailwindcss
  • 33、深入探究Sun RPC:多线程、服务器绑定与认证机制
  • 34、Sun RPC:认证、超时重传及相关机制详解
  • 35、Sun RPC 中的 XDR:外部数据表示详解
  • 如何通过Kotaemon降低人工客服工作量30%?
  • 2025年年终成都四川工作服厂家推荐:专家结合行业标准与市场口碑严选的5家标杆企业案例 - 品牌推荐
  • Kotaemon能否生成Makefile?自动化构建脚本辅助
  • 2025年质量好的特教设备器材/幼儿园特教设备行业内口碑厂家排行榜 - 行业平台推荐
  • 2025安徽不错的特训学校TOP5权威推荐:深度测评指南,助 - myqiye
  • 350页pdf!大模型基础教材发布,开源!
  • Kotaemon邮件发送助手:自动撰写并投递
  • 如何甄别靠谱的工作服供应商?2025年年终成都地区5家实力厂家综合评测与专业推荐! - 品牌推荐
  • 2025年年终成都四川工作服厂家推荐:从生产资质到服务网络的全方位对比与5家实力厂商清单 - 品牌推荐
  • 【Linux进阶】mmap实战:文件映射、进程通信与LRU缓存 - 指南
  • 2025年靠谱的动力配电柜/低压配电柜成套设备厂家最新实力排行 - 行业平台推荐
  • 2025年上海家政推荐公司TOP5,家政品牌公司全解析,家政 - mypinpai
  • Kotaemon能否用于构建智能面试官?HR场景落地
  • Kotaemon自动化报表生成:周报月报一键产出
  • **YOLOv12图像去雾检测革命:基于UnfogNet的恶劣天气目标检测突破性解决方案**
  • Kotaemon如何提升首次响应速度?缓存预热技巧
  • Ventoy 全能启动盘制作指南:告别繁琐,拥抱高效
  • Kotaemon更新日志曝光:即将上线实时反馈调优功能
  • **基于MB-TaylorFormer高分辨率特征提取的YOLOv11改进实战指南**
  • 大文件预览实现
  • 如何在私有化环境中部署Kotaemon实现数据安全?
  • Linux创作笔记综合汇总篇
  • YOLOv11注意力机制革命:Mamba-MLLA注意力机制完全集成指南
  • 多串口转光纤神器!SG-RS232/485/422-Fiber-110,20-40 公里稳定传输无压力
  • 浅谈Linux部分语法(从基础操作到自动化编程的三个层次)