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

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • 继承的概念,extends 语法

    JAVA 25 SELF
    等级 17,课时 0
    在本讲中,我们将弄清什么是 Java 中的继承,如何借助它避免代码重复,以及如何通过关键字 extends 声明类层次结构。我们还会看看子类究竟继承了什么、有哪些限制(单继承、私有成员、构造器),通过动物的实用示例讲解构造器的细节和常见错误。
    可用
  • 方法重写(override),@Override 注解

    JAVA 25 SELF
    等级 17,课时 1
    在本讲中,我们讲解 Java 中的方法重写:子类为何以及如何替换父类的行为, @Override 注解有什么用,通过基类类型引用调用时多态如何工作,以及关键规则(签名、访问修饰符、异常、协变)与限制( static、 final、 private)。最后以迷你项目“动物园”的实践和常见错误解析收尾。
    可用
  • 使用 super:调用父类的构造函数和方法

    JAVA 25 SELF
    等级 17,课时 2
    解析 Java 中的关键字 super:如何调用父类的方法和构造函数,如何访问被子类“隐藏/遮蔽”(shadowing)的父类字段,何时以及为何通过 super 和 super(...) 扩展行为,以及相关限制(不能在静态方法中使用,无法访问 private)与常见错误。包含大量基于 Animal/ Cat/ Dog 和 Vehicle/ Car 的实践示例。
    可用
  • 创建类层次结构,贴近生活的示例

    JAVA 25 SELF
    等级 17,课时 3
    我们将学习如何在 Java 中设计和实现类的层次结构:如何抽取共性与特性,搭建继承树,何时适用 is-a 关系,何时更应使用组合( has-a)。通过贴近生活的示例(动物、几何、交通、用户),一起讨论架构细节与常见的设计误区。
    可用
  • 继承的问题与限制

    JAVA 25 SELF
    等级 17,课时 4
    在本讲中,我们讨论 Java 继承模型的边界:类的单继承、构造器不继承以及 private 成员不可访问。我们会拆解“脆弱”的层次结构与“会破坏”的继承效应,展示替代方案——组合( has-a)、委托与接口,并给出“何时真的需要 extends”的判据。沿途还会提到通过 super(...) 调用父类构造器以及典型的设计错误。
    可用
  • 多态的概念及其作用

    JAVA 25 SELF
    等级 18,课时 0
    在本讲中,我们解析 Java 中的多态:它是什么, overloading 与 overriding 有何区别,动态绑定(晚绑定)如何工作,以及为何一个接口可以有多个实现。通过实际示例你将看到,多态如何简化架构、让代码更易扩展,并降低模块间的耦合。
    可用
  • 方法重载(overloading)

    JAVA 25 SELF
    等级 18,课时 1
    深入了解 Java 中的方法重载:何时有必要为同名方法声明多个版本、编译器如何根据参数选择最佳匹配、为何不能仅按返回类型进行重载,以及重载构造器与 ... varargs 如何工作。我们将拆解 println 的示例,编写一个小型 Calculator,并梳理与自动装箱/类型转换以及 Integer/ Long 之间歧义相关的典型错误。
    可用
  • 方法重写(overriding):与重载的区别

    JAVA 25 SELF
    等级 18,课时 2
    详细讲解 Java 中的方法重写:overriding 如何在运行时实现多态,与 overloading 有何不同,适用的规则(签名、可见性、异常、协变返回),如何使用 @Override,以及通过 super 调用父类逻辑。我们会展示实践示例并分析常见错误。
    可用
  • 在实践中使用多态

    JAVA 25 SELF
    等级 18,课时 3
    通过生动示例展示多态:如何在一个基本类型的集合中存放不同种类的对象,并且在不使用 if/ switch 的情况下调用“正确”的方法;为什么添加一个新的子类无需重写已有逻辑;以及这种做法有哪些限制。我们将构建带有 work() 方法的员工层次结构,讨论可扩展性并剖析常见错误。
    可用
  • 多态与抽象类的关系

    JAVA 25 SELF
    等级 18,课时 4
    抽象类与抽象方法如何在 Java 中建立共同的契约并启用多态:为什么不能创建抽象对象,子类如何实现必需方法,如何通过基类类型进行编程同时获得“正确”的行为。我们将通过动物与员工层次结构的示例来讲解,并讨论语法细节与常见错误。
    可用
  • OOP 中的抽象:为何以及如何应用

    JAVA 25 SELF
    等级 19,课时 0
    面向对象中关于抽象(Java)的清晰入门:它是什么、为什么需要,以及如何在设计中应用。我们将拆解语言工具——抽象类 abstract class 和接口 interface、抽象方法,以及通过通用契约进行工作(例如诸如 payment.process() 或 draw() 这样的调用)。通过实际示例( Shape、 Payment、Transport)展示如何隐藏实现细节、降低耦合并简化系统扩展。
    可用
  • 抽象类与抽象方法:语法与示例

    JAVA 25 SELF
    等级 19,课时 1
    在本讲中,我们将一步步拆解 Java 中的抽象类与抽象方法:何时需要使用 abstract,如何声明抽象的 class,它与 interface 的区别,以及如何在子类中实现必需的方法(例如 makeSound())。我们会用直观示例( Animal、 Transport、 Shape)来配合讲解,并解析常见错误:从试图实例化抽象类到错误使用修饰符。
    可用
  • 1
  • ...
  • 8
  • 9
  • 10
  • 11
  • 12
  • ...
  • 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