加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

如何在另一个类而不是它的超类中调用子类方法?

发布时间:2020-12-15 02:19:25 所属栏目:Java 来源:网络整理
导读:我想在 java中的另一个类中调用子类函数.我这样做吗? 这里的例子是我的超类和子类. public abstract class a{ method 0;}class b extends a{ method 1;} 还有另一个课堂电话c.我想在课堂上做以下操作. C是新文件中的另一个类.但是在同一个包中. class c{ c
我想在 java中的另一个类中调用子类函数.我这样做吗?

这里的例子是我的超类和子类.

public abstract class a
{
  method 0;
}

class b extends a
{
   method 1;
}

还有另一个课堂电话c.我想在课堂上做以下操作. C是新文件中的另一个类.但是在同一个包中.

class c
{
   c val;
   public c
   {
      a var1 =( (b)val.method0()).method1;

   }
}

但是在运行程序时我得到一个异常,声明cant转换类型为b.有没有人有建议摆脱这个?

这是我得到的实际异常错误.(我在上面的代码中写了一个演示)

Exception in thread “main” java.lang.ClassCastException:
classfileparser.ConstantClass cannot be cast to
classfileparser.ConstantUtf8 at
classfileparser.ClassFile.(ClassFile.java:50) at
classfileparser.ClassFileParser.main(ClassFileParser.java:18)
C:UsersDaveAppDataLocalNetBeansCache8.2executor-snippetsrun.xml:53:
Java returned: 1 BUILD FAILED (total time: 0 seconds)

解决方法

那么,你的代码的样子,以及你的代码中没有限制性修饰符(除非你这样做),你所要做的就是实例化子类并在你的c类中调用它的方法.

这些静态方法吗?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读