java - 如何阻止构造函数在派生类中尝试使用私有(private)但不起作用的java继承中覆盖

标签 java oop constructor

我不希望任何人覆盖我的构造函数尝试使用私有(private)方法,但它给出了我的错误如何停止覆盖我的构造函数

 class bc {

  int a;

  bc() {
   System.out.println("hi this is construvtor ");
   a = 10;
   System.out.println("the value of a=" + a);
  }
 }

 class dc extends bc {

  int b;

  dc() {

   a = 20;
   System.out.println("derived dc");
   System.out.println("derived value of a=" + a);
 }

 }
 public class sup {
  public static void main(String[] args)

  {
  dc s1 = new dc();
  }

 }

最佳答案

构造函数不会被重写,方法会被重写。
当您在子类中添加与父类具有相同参数的构造函数时,它不会覆盖父类中的哪一个。
它只提供了一种实例化子类的方法,与调用父类构造函数的方法相同。

在父类中使用private构造函数只会使该类不可继承,因为子类构造函数需要调用父类构造函数和父类中的private构造函数防止它。

关于java - 如何阻止构造函数在派生类中尝试使用私有(private)但不起作用的java继承中覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46823771/

相关文章:

PHP getter/setter 到数组

c++ - 调用类构造函数导致段错误 (C++)

c++ - 在 C++ 中作为参数传递时,数组隐式转换为容器类

java - 如何给不同的Java类赋予不同的权限?

java - 获取 JFrame 中 JTextField 的坐标

java - Linux 上的 TCP 打洞和 setReuseAddress()

C#:在不相关的类之间共享属性、事件和方法

java - 如何使用Java执行

java - 获取类型对象的值

java - 构造函数错误(JAVA)