我是Java编程的新手,所以如果有任何误用,请提醒并原谅我。 在处理类类型时我可以创建多态,比如说:
class A{}
class B{}
void method(Object obj){
if (obj instanceof A) {}
else if (obj instance of B){}
else {}
}
我可以传递不同的类来调用method()的不同部分,但是当处理像int这样的基本类型时,它不会从Object继承。
我知道这实际上并不是严格的多态,因为没有覆盖。也许,泛型编程是一个更合适的名称,但我不知道这是否正确。
答案 0 :(得分:0)
您可以定义几个具有相同名称和不同参数类型的方法:
void method(int a) {}
void method(long a) {}
void method(double a) {}
@ByteCommander提到它被称为重载 我想这就是你的意思。在这种情况下,当您致电:
int a = 1; method(a);
您将执行第一个定义的方法。等等...
答案 1 :(得分:0)
如果您尝试使用基本数据类型执行您正在谈论的内容(这不是多态性),您可以尝试使用整数而不是整数。 int是原始数据,按其值存储。整数是一个类,具有一个的所有功能(加上自动装箱/拆箱,但不要担心)。
因为Integer是一个类,你可以扩展它并用你的实例来做你正在谈论的事情。
还有(长)s,(双)s,(布尔)s等等