68、Java 继承中的方法隐藏、字段隐藏、禁用继承及抽象类和方法详解

Java 继承中的方法隐藏、字段隐藏、禁用继承及抽象类和方法详解

1. 方法隐藏(Method Hiding)

在 Java 中,一个类会继承其超类的所有非私有静态方法。当在一个类中重新定义一个继承来的静态方法时,这被称为方法隐藏。子类中重新定义的静态方法会隐藏其超类的静态方法。而重新定义非静态方法则被称为方法重写。

以下是相关代码示例:

// MHidingSuper.java
package com.jdojo.inheritance;
public class MHidingSuper {
    public static void print() {
        System.out.println("Inside MHidingSuper.print()");
    }
}

// MHidingSub.java
package com.jdojo.inheritance;
public class MHidingSub extends MHidingSuper {
    public static void print() {
        System.out.println("Inside MHidingSub.print()");
    }
}

方法隐藏时,重新定义的方法在名称、访问级别、返回类型和异常等方面的规则与方法重写相同。但方法隐藏的绑定规则不同,静态方法使用早期绑定。编译器会根据表达式的编译时类型来确定在运行时调用静态方法时执行的代码。

以下是测试代码:


                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值