如何在不知道我返回的对象类型的情况下实现一个在Java中返回的方法?

akb*_*ggs 2 java types

我在使用Python一年后回到Java,所以我试图记住一些涉及的语法/设计技术.在这样做的过程中,我将返回并实现我之前课程中的每个项目,仅限于Java ...但我已经停留在实现一个简单的Stack上了.这是因为当我不知道我正在返回什么类型的对象时,我不确定如何编写方法签名,即在pop()方法中.insert()方法也存在同样的问题,因为我不知道作为参数传递了什么类型的对象.在Python中,没有必要在方法签名中显式声明对象类型,因此这让我感到困惑.

我是否必须为每种可能的参数/返回值类型编写单独的方法,或者是否存在解决此问题的方法?

duf*_*ymo 6

你可以像这样写:

public interface Stack
{
    void push(Object o);
    Object pop();
}
Run Code Online (Sandbox Code Playgroud)

或者您可以使用泛型:

public interface Stack<T>
{
    void push(T o);
    T pop();
}
Run Code Online (Sandbox Code Playgroud)

如果你的目的不是自己编写,你可以使用Java内置的:

http://www.docjar.com/docs/api/java/util/Stack.html