java不能继承,哪些java类不能被继承

  java不能继承,哪些java类不能被继承

  Java只支持单一继承,不允许多重继承。单一继承意味着一个类只能有一个父类,多重继承意味着一个类可以有多个父类。

  如何解决写爬虫IP受阻的问题?立即使用。

  Java可以有多级继承,即一个类可以继承一个类的子类。比如B类继承A类,C类可以继承B类,那么C类也间接继承A类。

  子类可以继承父类的所有成员变量和方法,但是子类永远不能继承父类的构造方法。在子类的构造方法中,可以使用语句super(参数表)调用父类的构造方法。

  定义类属性和方法并描述某类事物的抽象。

  从逻辑上讲,单继承更显式。子类应该是父类所代表的更具体的一类东西,不应该既是这种东西又是那种东西。

  从实用的角度来看,单继承易于阅读和维护,语义和逻辑清晰。

  多继承造成的问题。钻石危机:

  foo()

  /\

  /\

  B foo() C foo()

  \ /

  \ /

  D foo()假设A类中有一个公共方法fun(),那么B类和C类同时继承A类,B类或C类分别覆盖fun()。这时D类通过多重继承同时继承B类和C类,导致了钻石危机。程序运行时如何判断对应的方法fun()。

  A级

  public void foo(){

  }

  }

  B类扩展了A{

  public void foo(){

  }

  }

  C类扩展了A{

  public void foo(){

  }

  }

  //此处不允许。

  公共类D扩展了B,C{

  public void foo(){

  }

  }(1)如果一个子类继承的多个父类中存在同名的实例变量,那么子类在引用该变量时就会产生歧义,无法判断应该使用哪个父类的变量。

  (2)如果你在一个子类继承的多个父类中有相同的方法,并且该方法是否被子类覆盖,那么在调用方法时就会出现歧义,无法判断应该调用哪个父类的方法。以上是java不多继承的原因的详细内容。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: