我是 .NET 人 - 我主要使用 C# 编写代码。
从 C# 3.0 开始,我们可以利用 lambda 表达式和表达式树来使用静态反射。例如,可以GetMethodName
在下面的代码片段中实现返回传入参数的方法名称:
string methodName = GetMethodName( o => o.DoSomething());
Console.WriteLine(methodName); // displays "DoSomething"
现在,当我查看 Java 世界中的 Mockito 示例(或 EasyMock 示例)时,我看到:
LinkedList mockedList = mock(LinkedList.class);
when(mockedList.get(0)).thenReturn("first");
它是如何工作的?
该方法如何when
工作?它如何解释mockedList.get(0)
为对 get 方法的调用,其中 0 作为参数而不是值传递?