java - 继承 void 方法
问题描述
我想知道如何覆盖超类中的 void 方法:
public class Father
{
public void showName(String name){
System.out.println("My name is :"name);
}
}
public class Children extends Father
{
public void showName(String name)
{
super.showName()+System.out.println("my name is: "+name);
}
}
super.showName()+System.out.println("my name is: "+name);
我知道这个命令不会编译,但我怎样才能覆盖这个 void 方法?
解决方案
您可以像任何其他方法一样覆盖具有void
返回类型的方法,只是不能使用它的超级返回值,因为它没有返回值。例如:
public class Children extends Father {
@Override
public void showName(String name) {
super.showName(name);
System.out.println("my name is: " + name);
}
}
name
话虽如此,这是一个非常有问题的设计,如果有一个方法可以接受该参数并从中构建一个字符串,将实际打印留给调用者,可能会更有意义。
推荐阅读
- powershell - 在退出脚本之前等待 cmdlet 终止
- java - 如何使用 Jersey (JAX-RS) 向 NTLM 认证服务器发出简单的 POST 请求
- jdbc - 可以从 jdbc 连接运行 DB2 命令吗
- julia - 如何使用 Plots.jl 在 Julia 中缩放绘图
- javascript - 无法在“DOMWindow”上执行“postMessage”:提供的目标原点与收件人窗口的原点不匹配
- bash - 如何在 bash 函数中引用 back-tics?
- angular - Angular Docker 热重载无法在 Windows 上运行
- xcode - 构建服务错误:xcodebuild 已终止,因为它在 600 秒内没有产生任何活动
- typescript - Three.js Object3D 缺少 isMesh、Material 和 Geometry 属性?
- python - 改进我在 python 中的成员资格比较