繁体   English   中英

以通用类作为参数的Java方法

[英]Java Method with generic class as argument

可以在带有argumet的通用类的Java中编写一个方法?

例:

public void Transfer (class c){
    class.Search();
}

是的,您需要执行以下操作:

public class Foo<T> {
    public void Transfer(T c) {
        c.Search();
    }
}

由于您似乎想调用一个特定的方法,因此您可能想定义一个接口,该接口提供您要使用的方法,并将通用约束与其绑定:

public interface MyInt {
    void Search();
}

....
public class Foo<T extends MyInt> {
    public void Transfer(T c) {
        c.Search();
    }
}

或者:

public class Foo {
    public void Transfer(MyInt c) {
        c.Search();
    }
}

最后一个示例取消了泛型,并使用了接口,根据您要实现的目标,有时可以生成易于遵循的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM