有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

以泛型类作为参数的Java方法

可以用java编写一个带有argument?的泛型类的方法

例如:

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

共 (1) 个答案

  1. # 1 楼答案

    是的,你需要这样做:

    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();
        }
    }
    

    最后一个示例不使用泛型,而是使用接口,这有时会生成更容易理解的代码,具体取决于您试图实现的目标