PMD将报告违规行为:
ArrayList<Object> list = new ArrayList<Object>();
Run Code Online (Sandbox Code Playgroud)
违规是"避免使用像'ArrayList'这样的实现类型;而是使用接口".
以下行将更正违规行为:
List<Object> list = new ArrayList<Object>();
Run Code Online (Sandbox Code Playgroud)
为什么要使用后者List而不是ArrayList?
我在Class中有方法,它是Interface的实现.当我做它显式实现时,我遇到了编译器错误
The modifier 'public' is not valid for this item
Run Code Online (Sandbox Code Playgroud)
为什么不允许public显式接口实现?
我正在使用类的实例填充数组:
BankAccount[] a;
. . .
a = new BankAccount[]
{
new BankAccount("George Smith", 500m),
new BankAccount("Sid Zimmerman", 300m)
};
Run Code Online (Sandbox Code Playgroud)
一旦我填充这个数组,我想按余额金额对它进行排序.为了做到这一点,我希望能够检查每个元素是否可以使用排序IComparable.
我需要使用接口来做到这一点.到目前为止,我有以下代码:
public interface IComparable
{
decimal CompareTo(BankAccount obj);
}
Run Code Online (Sandbox Code Playgroud)
但我不确定这是否是正确的解决方案.有什么建议?
我有jquery ui sortables正常工作但我的可排序元素中有其他的交互元素.为了防止在与可排序div中的元素交互时意外排序,我想以某种方式使得可排序的拖动运动仅在拖动可排序的某个元素时发生,例如可能存在的"移动"图标在每个可排序的左上角.这可能是通用的jqui,还是我需要编写自己的钩子?
可能重复:
在C++中模拟接口的首选方法
我很想知道C++中是否有接口,因为在Java中,设计模式的实现主要是通过接口将类解耦.有没有类似的方法在C++中创建接口呢?
我知道他们强迫你实现方法等,但我不明白为什么你想要使用它们.任何人都可以给我一个很好的例子或解释我为什么要实现这个.
看到代码片段就像
Set<Record> instances = new HashSet<Record>();
Run Code Online (Sandbox Code Playgroud)
我想知道Hashset是否是一种特殊的集合.他们之间有什么区别?
为接口编写junit测试的最佳方法是什么,以便它们可用于具体的实现类?
例如,你有这个接口和实现类:
public interface MyInterface {
/** Return the given value. */
public boolean myMethod(boolean retVal);
}
public class MyClass1 implements MyInterface {
public boolean myMethod(boolean retVal) {
return retVal;
}
}
public class MyClass2 implements MyInterface {
public boolean myMethod(boolean retVal) {
return retVal;
}
}
Run Code Online (Sandbox Code Playgroud)
您如何针对界面编写测试,以便将其用于课程?
可能性1:
public abstract class MyInterfaceTest {
public abstract MyInterface createInstance();
@Test
public final void testMyMethod_True() {
MyInterface instance = createInstance();
assertTrue(instance.myMethod(true));
}
@Test
public final void testMyMethod_False() {
MyInterface instance = createInstance(); …Run Code Online (Sandbox Code Playgroud) PHP 5中是否可以使用具有私有/受保护方法的接口?
现在我有:
interface iService
{
private method1();
}
Run Code Online (Sandbox Code Playgroud)
这引发了一个错误:
解析错误:语法错误,意外T_STRING,期待T_VARIABLE
我只想确认接口只能包含公共方法.
interface ×10
java ×4
c# ×2
oop ×2
c++ ×1
collections ×1
concept ×1
icomparable ×1
jquery-ui ×1
junit ×1
php ×1
set ×1
testing ×1
unit-testing ×1
web ×1