'clone()' 在 'java.lang.Object' 中具有 protected 访问权限怎么解决
时间: 2023-08-09 14:12:20 浏览: 97
要解决这个问题,可以在子类中重写 'clone()' 方法并将其访问权限更改为 public。这样就可以在子类外部访问 'clone()' 方法了。
例如:
```
public class MyClass implements Cloneable {
//...
@Override
public Object clone() throws CloneNotSupportedException {
return super.clone();
}
//...
}
```
在这个例子中,我们重写了 'clone()' 方法并将其访问权限更改为 public。同时,我们还实现了 'Cloneable' 接口以指示这个类是可克隆的。现在,我们可以在 MyClass 外部调用 'clone()' 方法了。
相关问题
'clone()' 在 'java.lang.Object' 中具有 protected 访问权限
'clone()' 方法在 'java.lang.Object' 中的访问权限为 protected,意味着只有在同一包中的类和该类的子类可以访问该方法。如果需要在不同包中访问该方法,则需要通过覆盖该方法并将其访问权限更改为 public 来实现。注意,使用 'clone()' 方法进行对象复制需要注意一些细节,如正确处理引用类型的变量等。
java opencv mat.clone 偶尔提示 java.lang.Exception: unknown exception at org.opencv.core.Mat.n_clone(Native Method) ~[opencv-460.jar:4.6.0] at org.opencv.core.Mat.clone(Mat.java:188)
这个错误通常是因为OpenCV库没有正确加载引起的。请确保您已正确安装OpenCV库,并在程序中正确加载它们。如果您已经正确地安装了OpenCV库并且仍然遇到此错误,请检查您的代码是否正确调用了OpenCV库中的函数。此外,您还可以尝试更新您的OpenCV版本,看看是否可以解决此问题。另外,该错误可能是内存不足或者内存泄漏导致的,您可以尝试优化代码,减少内存使用。