参数化类时是否可以指定默认类型?
例:
例:
// abstract class public abstract class AbsClass<T1 extends Par1Class,T2 extends Par2Class> { // code } // parametrized imlementation class public class RealClass extends AbsClass<ClassThatExtendsPar1,ClassThatExtendsPar2Class> { // code } // non-parametrized imlementation class public class RealClass extends AbsClass { // code }
在我的实现中,我必须指定NONE或ALL参数.有可能使第二个参数不是强制性的,像这样:
// abstract class public abstract class AbsClass<T1 extends Par1Class,T2 extends Par2Class : default Par2Class > { // code } // parametrized only mandatory imlementation class public class RealClass extends AbsClass<ClassThatExtendsPar1> { // code }
解决方法
简单的答案:不,java不支持这样的默认参数.