原始类型或非原始类型是否应该在Java接口中首选?

Gre*_*tes 4 java interface

(我以为我曾经在一本书中读到过这个,但现在我不确定在哪里找到它.如果这个问题提醒你一些你读过的材料,请发表参考!)

接口中原语的优点和缺点是什么?

换句话说,这些中的一个优于另一个,为什么?在某些情况下,也许一个人比另一个人更可取?

public interface Foo {
    int getBar();
}
Run Code Online (Sandbox Code Playgroud)

要么

public interface Foo {
    Integer getBar();
}
Run Code Online (Sandbox Code Playgroud)

同理:

public interface Boz {
    void someOperation(int parameter);
}
Run Code Online (Sandbox Code Playgroud)

要么

public interface Boz {
    void someOperation(Integer parameter);
}
Run Code Online (Sandbox Code Playgroud)

显然null,在非原始情况下必须处理s 的问题,但有更深层次的担忧吗?

Ark*_*kku 12

除非有特定原因要使用对象类型(例如需要null),否则应使用原始类型来提高效率和简单性.使用对象类型可能会导致各种细微错误,例如Object,错误地比较两个引用是否属于同一个对象而不是相同的值,等等.观察Java自己的库如何使用原始类型,除了带有对象的容器.