我遇到了一些有趣的Java代码,IntelliJ标记为错误,但javac接受为合法.IntelliJ是错误的,代码是合法的,或者编译器是"错误的",无论是由于错误还是故意放松规则.
我喜欢把我的理解Java类型系统相当不错,和我自己的推理使我怀疑的IntelliJ是错误的,javac是对的.但是,我对JLS有一段时间了,我想知道肯定.
在我们讨论有问题的代码之前,让我们看看一些绝对非法的类似代码:
interface A<T> {}
interface X extends A<String> {}
interface Y extends A<Object> {}
interface Z extends X, Y {} // COMPILE ERROR
Run Code Online (Sandbox Code Playgroud)
正如我所料,IntelliJ都javac 正确地将其标记为错误:'A'不能用不同的类型参数继承:'java.lang.String'和'java.lang.Object'.
没问题.但是如果我们通过扩展原始形式来制作X和Y通用呢?Z
interface X<T> extends A<String> {}
interface Y<T> extends A<Object> {}
interface Z extends X, Y {} // OK according to javac, ERROR according to IntelliJ
Run Code Online (Sandbox Code Playgroud)
在这里,IntelliJ急切地报告了它为第一个片段所做的相同错误,但很javac高兴接受所写的代码.
我的理解是原始类型是递归擦除的,这意味着原始类型的所有超类和超接口都被其 …
我正在使用android 4.1.1 ...我正在创建一个应用程序,允许用户使用Wifi Hotspot创建自己的网络,然后客户端可以连接到它并共享数据.我已成功在android中创建了Wifi热点但我无法为此目的配置它.有没有办法通过编码在android上配置Wifi Hotspot?
我在OAuth中找到了许多不同的解决方案,无论是使用某些库还是使用纯粹的请求(https://github.com/googlesamples/oauth-apps-for-windows).
但是,没有一个解决方案看起来像我真正需要的解决方案.目前,我的应用程序使用自己的数据库供用户使用WCF服务请求(使用用户名和密码)登录.但是,所有用户都使用Google帐户创建了他们的域名电子邮件,因此我想添加另一个"登录Google"按钮,这样只需确保用户也可以使用他的Google电子邮件密码对登录.我不需要返回令牌以供进一步使用等.
在WPF/C#桌面应用程序中实现此功能的最简单方法是什么?
我正在寻找一种在 Jest 中生成测试并运行它们的方法。我正在测试一个 API,测试用例是从 CSV 文件导入的,从中生成测试。
目前我得到的是一组参数,我想从中生成测试并运行它们。这就是我看到它的工作方式:
let testFn = (testName, request, expected) => it(test.testName, (request, expected) => {
return new Promise((resolve, reject) => {
http.post(request, (err, res) => {
if (err) {
reject(err);
} else {
resolve(res);
}
})
}).then((res) => {
expect(res.result).toBe(expected['result']);
return response;
})
});
Run Code Online (Sandbox Code Playgroud)
上面的代码是我的测试功能。在我看来,应该调用它来执行测试。它根据 3 个参数生成测试:
testName 他是测试的名称,在控制台中显示request 是发送到 API 的请求expected 是预期的结果。结构总是相同的:res.result应该是参数中的任何内容expect。
我从 CSV 获得的带有测试的数组元素的示例是:
const oneTest = {
testName: 'the request should return 10',
request: {
input: …Run Code Online (Sandbox Code Playgroud) android ×1
android-wifi ×1
c# ×1
generics ×1
google-oauth ×1
java ×1
javascript ×1
jestjs ×1
oauth-2.0 ×1
testing ×1
tethering ×1
wifi ×1
wpf ×1