CodeGym
促销
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • 对象初始化:初始化顺序

    JAVA 25 SELF
    等级 14,课时 5
    逐步讲解 Java 如何初始化对象:字段的默认值、显式初始化、实例初始化块,以及最终通过 new 调用构造函数。以 Person 类为例,我们将看到实际的输出顺序、默认值对照表、流程图,以及常见错误(重复逻辑、对 static 的误解、处理 null、通过 this(...) 调用构造函数)。
    可用
  • IDEA 中的 Debug

    JAVA 25 SELF
    等级 14,课时 6
    Bug。程序员有自己的行话,尽管很多人认为这只是技术术语。无论如何,你既避不开与它的初识,也免不了深入学习。
    可用
  • 封装的原则:为什么需要它

    JAVA 25 SELF
    等级 15,课时 0
    在本讲中,我们将讲解什么是 Java 中的封装,它如何通过私有字段( private)和公共接口( public 方法)来实现,为何要隐藏对象的内部状态,以及这如何提升代码的可靠性与可维护性。你将看到反例与正例、实际应用、方法对比表,以及常见错误。
    可用
  • 访问修饰符

    JAVA 25 SELF
    等级 15,课时 1
    在本讲中,我们将拆解 Java 中的访问级别: public、 protected、 package-private 和 private。我们会弄清每个修饰符该在何处、为何使用,如何保护字段(封装),为方法和构造器选择哪些规则,并结合包与继承的示例,最后总结最佳实践与常见错误。
    可用
  • Getter 和 Setter:语法与最佳实践

    JAVA 25 SELF
    等级 15,课时 2
    在本讲中,你将学习如何通过封装与 get/ set 方法来管理 Java 类字段的访问。你会了解 JavaBeans 约定、针对 boolean 字段使用 isXxx() 形式的 getter 的特殊性,看到在 setter 中进行校验、对可变字段进行安全处理,以及在 IDE 中自动生成访问器的示例。
    可用
  • 静态和 final 字段的初始化

    JAVA 25 SELF
    等级 15,课时 3
    在本讲中,你将学习如何在 Java 中初始化静态字段( static)和不可变字段( final):在声明处、在静态初始化块中,以及在构造函数中。我们将讨论常量组合 public static final,正确访问静态成员、初始化顺序,以及需要避免的典型错误。
    可用
  • 初始化块

    JAVA 25 SELF
    等级 15,课时 4
    在本讲中,你将了解 Java 中的初始化块:非静态块与 static 静态块有何不同,字段、块与构造函数的执行顺序,何时适合把通用逻辑放进初始化块,何时更应使用构造函数。我们还会讲解示例、继承中的细节以及常见错误。
    可用
  • 内部类(非静态 inner)

    JAVA 25 SELF
    等级 16,课时 0
    我们来拆解 Java 的内部(non-static inner)类:它是什么以及它如何与外部类实例关联,如何声明并通过 outer. new Inner() 来创建;它们如何访问带有 private/ public 修饰符的成员;有哪些限制(除了常量外不允许有 static 成员);以及可见性选项和实践示例: Backpack.Item、自定义集合的迭代器,以及通过 OuterClassName. this 访问外部对象。最后 — 常见错误及其规避方法。
    可用
  • 静态嵌套类(static nested)

    JAVA 25 SELF
    等级 16,课时 1
    解析 Java 中的静态嵌套类:它是什么,与内部类(inner)的区别,如何通过修饰符 static 声明,如何在没有外部类对象的情况下创建实例,以及适用的访问规则(没有 OuterClass.this,只能访问静态成员)。展示实践场景—— Builder、数据结构中的内部节点 Node、工具类;与 inner 类对比,附带示意图,并拆解常见错误:把 outer.new Inner() 搞混,以及正确的调用方式 new Outer.Nested()。
    可用
  • 匿名类

    JAVA 25 SELF
    等级 16,课时 2
    本讲将讲解 Java 中的匿名类:它是什么、如何在使用处声明并创建、编译器如何为它们命名 .class 文件、限制(final/effectively final、没有构造函数、初始化块)以及实际应用场景。我们还会展示如何访问外部类的成员,并分析常见错误。
    可用
  • 局部类:在方法内部的声明

    JAVA 25 SELF
    等级 16,课时 3
    深入讲解 Java 的局部类:它是什么、如何在方法和代码块中声明、对修饰符与静态成员的限制,以及对方法变量的访问规则(仅 final/ effectively final)。我们还会与匿名类进行对比,给出实践示例(比较器、临时数据结构、小型测验结果)和常见错误。你将理解何时局部类比匿名类更合适,以及为何要牢记 static 和 public/ private/ protected。
    可用
  • 泛型入门

    JAVA 25 SELF
    等级 16,课时 4
    Java 中的 Generics(泛型)的实践入门:为什么把数据存进 Object 危险,如何声明泛型类与泛型方法,如何使用 Box<T>、配对(pair)与通用方法,以及类型安全在无需显式转换时带来的优势。还将讨论其限制(基本类型、类型擦除)并分析使用示例。
    可用
  • 1
  • ...
  • 7
  • 8
  • 9
  • 10
  • 11
  • ...
  • 30
Learn
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 动态
  • 联盟计划
Company
  • 关于我们
  • 联系方式
  • 评价
  • 媒体中心
  • CodeGym for EDU
  • 常见问题
  • 支持
CodeGymCodeGym 是一个从零开始学习 Java 编程的在线课程。该课程是初学者掌握 Java 的完美方式。它包含 1200+ 个带即时验证的任务,以及必要的 Java 基础理论。为了帮助你在学习中取得成功,我们实现了一系列激励功能:测验、编码项目、关于高效学习的内容,以及 Java 开发者职业相关内容。
关注我们
界面语言
English Deutsch Español हिन्दी Français Português Polski বাংলা
简体中文
मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
“程序员是培养出来的,不是天生的” © 2026 CodeGym
MastercardVisa
“程序员是培养出来的,不是天生的” © 2026 CodeGym