促销
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
Java 25
所有任务
所有级别
继承的概念,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
Please enable JavaScript to continue using this application.