我知道OOP(面向对象编程)和SOLID.
和
但是,我不确定具体的区别是什么,以及SOLID是否是OOP的子集.谁能帮助解释这些差异?
import java.util.*;
class A extends HashSet<Integer> {
public boolean add(Object obj){ //compiler error
return true;
}
}
or
class Abc <T> {
public void add(T t){} //compiler error
public void add(Object i){} //compiler error (can't overload?)
}
Run Code Online (Sandbox Code Playgroud)
错误:名称冲突:类型为test2的方法add(Object)与类型为HashSet的add(E)具有相同的擦除但不覆盖它
我不知道上面背后的概念是什么错误可以任何人建议我可以在哪里研究这个概念?
为什么下面的代码不能编译?
class aa1 <String> {
public void fun(){
String s = ""; // not compiling
}
}
class aa2 <String> {
String s = ""; // not compiling
}
class aa3 <String> {
String s = (String)""; // compiling
}
Run Code Online (Sandbox Code Playgroud)
可以告诉或给我链接这个感谢.