z犬夜叉 2016-04-14 04:12 采纳率: 0%
浏览 6119
已结题

Java中子类实例可以调用父类方法吗

通常情况子类覆写父类方法
如果是构造函数,直接用super()
如果是普通方法用super.method()

但是如果创建了子类实例,比如A类中覆写了Object的equals()方法
A a = new A();
a怎么调用Object的equals()方法

A没有显示继承其他类

  • 写回答

10条回答

  • Goskalrie 2016-04-14 05:48
    关注

    首先,覆写是什么意思你肯定知道,子类的把父类的给覆盖掉了。子类拥有的方法域是子类的方法域与父类中可见的方法域的并集,如有重复,则保留子类中的此方法。至于a怎么调用Object的equals()方法,可以使用反射,相当于直接生成一个Object的实例,只不过下面的代码看似和A有什么关系,其实没什么关系:

     public class A{
        public static void main(String[] args) throws Exception{
            A a = new A();
            a.equals(args);
            Method objectEquals = A.class.getSuperclass().getDeclaredMethod("equals", Object.class);
            System.out.println(objectEquals.invoke("A", "A"));
        }
        @Override
        public boolean equals(Object obj) {
            System.out.println("A.equals");
            return false;
        }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)