小编Ril*_*ark的帖子

将List <SubClass>强制转换为List <BaseClass>的最有效方法

我有一个List<SubClass>我想要作为一个List<BaseClass>.看起来它应该不是一个问题,因为将a转换SubClass为a BaseClass是一个快照,但我的编译器抱怨演员表是不可能的.

那么,获取对相同对象的引用的最佳方法是List<BaseClass>什么?

现在我只是制作一个新列表并复制旧列表:

List<BaseClass> convertedList = new ArrayList<BaseClass>(listOfSubClass)
Run Code Online (Sandbox Code Playgroud)

但据我了解,必须创建一个全新的列表.如果可能的话,我想参考原始列表!

java inheritance casting

127
推荐指数
5
解决办法
6万
查看次数

如何在Eclipse中添加Maven依赖项?

我根本不知道如何使用Maven.我用Eclipse开发了几年,但还不需要了解它.但是,现在我正在查看一些建议我执行以下操作的文档:

"要将它包含在项目中,只需将此maven依赖项添加到您的构建中."

<repository>
   <id>jboss</id>
   <url>http://repository.jboss.org/maven2</url>
</repository>

   ...
<dependency>
   <groupId>org.jboss.resteasy</groupId>
   <artifactId>resteasy-jackson-provider</artifactId>
   <version>1.1.GA</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我如何使用Eclipse项目执行此操作?

请假设我对Maven一无所知.我只是想通过mvn在命令行上键入它可能会安装在我的计算机上,但这是我认识的程度.如果有一个等效的非Maven方式在Eclipse中遵循这些指令,我会很高兴继续对Maven一无所知.

java eclipse dependency-management maven

118
推荐指数
4
解决办法
27万
查看次数

使用远程src注入脚本标记并等待它执行

如何将一个<script src="https://remote.com/"></script>元素注入到我的页面中,等待它执行,然后使用它定义的函数?

仅供参考:在我的情况下,脚本会在极少数情况下进行一些信用卡处理,所以我不想总是包含它.我想在用户打开更改信用卡选项对话框时快速包含它,然后向其发送新的信用卡选项.

编辑以获取更多详细信息:我无权访问远程脚本.

javascript

63
推荐指数
5
解决办法
8万
查看次数

keyPressEvent.getCharCode()为所有特殊键返回0,如enter,tab,escape等

我的代码:

@Override
public void onKeyPress(KeyPressEvent event)
{
    if (event.getCharCode() == KeyCodes.KEY_ENTER)
    {
        registerButton.click();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是附加到TextBox,当我按Enter键时它会触发. event.getCharCode()只是零,不是13.当我按Tab键时,它就是0,当我按下escape时,它就是了0.哎呀!

昨天这个工作正常,项目中其他地方发生了一些变化,影响了这一点 - 但我不确定它是什么.看起来好像在最后一天没有做出相关的改变.

如果我处理a KeyUpEvent,这可以按预期工作.

我正在使用GWT 2.1.0.谢谢你的任何想法!

gwt onkeypress

32
推荐指数
2
解决办法
3万
查看次数

多态对象层次结构的构建器模式:Java可能吗?

我有一个接口层次结构,有Child实现Parent.我想使用不可变对象,所以我想设计Builder一些方便地构造这些对象的类.但是,我有很多Child接口,我不想Parent在每种类型的子构建器中重复构建s 的代码.

因此,假设以下定义:

public interface Parent {
    public Long getParentProperty();
}

public interface Child1 extends Parent {
    public Integer getChild1Property(); 
}

public interface Child2 extends Parent {
    public String getChild2PropertyA();
    public Object getChild2PropertyB();
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能有效地实施构建器Child1BuilderChild2Builder?他们应该支持以下操作:

Child1 child1 = Child1Builder.newChild1().withChild1Property(5).withParentProperty(10L);
Run Code Online (Sandbox Code Playgroud)

Child2 child2 = Child2Builder.newChild2().withChild2PropertyA("Hello").withParentProperty(10L).withChild2PropertyB(new Object());
Run Code Online (Sandbox Code Playgroud)

我不想withParentProperty为每个子构建器实现特殊情况.

编辑添加第二个属性,Child2以澄清这不能用简单的泛型.我不是在寻找一种方式来组合Child1Child2-我正在寻找一种方式来实现Builder,不重复建设的父类为每个子类的工作体系.

谢谢你的帮助!

java design-patterns builder

22
推荐指数
2
解决办法
1万
查看次数

将模板中写入的数组传递给meteor/handlebars helper

我有一个叫做的帮助器printArray,只打印一个数组中的每个项目.当我在JS中定义数组并通过上下文对象将其传递给帮助程序时,它工作得很好.我想要做的是在模板中定义数组,如:

{{printArray arr=[1, 3, 4] }}
Run Code Online (Sandbox Code Playgroud)

不幸的是,到了我的帮手时,arr关键点指向undefined.是否有任何有效的语法来在我的帮助器中获取数组而不在javascript中定义它?

handlebars.js meteor

22
推荐指数
2
解决办法
1万
查看次数

但是我不想用try/catch块来包围声明!

我正在编写一个使用的程序java.net.URLDecoder.decode(String value, String encoding).显然,这种方法可能会抛出一个UnsupportedEncodingException,我得到了.但我只是传递"UTF-8"作为编码.它不会抛出该异常.

我可以只围绕一个catch块,什么也不做的混账东西,但随后在任何情况下,怪物不会导致抛出异常,我不会发现它.我也不想创建一个throws UnsupportedEncodingException直到我的程序顶部的大型链.

我能在这做什么?为什么我不得不处理一些例外情况,而其他人(例如IllegalArgumentException,NullPointerException)我允许忽略?

java exception try-catch

20
推荐指数
1
解决办法
1652
查看次数

e2e量角器测试需要oauth认证

我有一个Angular应用程序需要与Google进行身份验证,授予一些范围等,我正在尝试为它设置自动e2e测试.我的量角器一般都适合我,但是当我们进入google auth页面,登录并重定向时,量角器未通过测试,因为"文档在等待结果时被卸载".

在每次测试之前,我是否可以使用工具或技术对开发Google帐户进行身份验证?

如果我可以让框架保持一秒,而普通的webdriver驱动登录,并且只有在我到达目标页面后才真正激活角度内容,那将是完美的!

oauth angularjs angularjs-e2e protractor

18
推荐指数
3
解决办法
1万
查看次数

在Java中指定多个接口的方法

我有两个接口,HasClickHandlersDoesFancyFeedback.然后我有一些实现两个接口的UI对象 - 例如,Button实现它们的一个都有点击处理程序,也做了花哨的反馈.

在我的代码声明中Button,我不想实际说,Button因为可能以后我会希望它,我不知道,一个Image有点击处理程序并做了花哨的反馈.所以不是具体而是说:

Button saveButton = aButtonIPassedIn;
saveButton.addClickHandler();
saveButton.doFancyFeedback();
Run Code Online (Sandbox Code Playgroud)

我想说,

{HasClickHandlers + DoesFancyFeedback} clickyFeedbackThing = aThingIPassedIn;
clickyFeedbackThing.addClickHandler();
clickyFeedbackThing.doFancyFeedback();
Run Code Online (Sandbox Code Playgroud)

我希望编译器要求aThingIPassedIn实现HasClickHandlers DoesFancyFeedback.

我可以创建一个扩展这两个接口的接口,并使用它.有没有更简单/更简洁的方式?

java inheritance interface

13
推荐指数
2
解决办法
3612
查看次数

AngularJS:使用angular-ui-router中的$ state.go将数据传递到状态

我正在制作文档编辑器.文档可以是类型A或类型B.它们可以通过文档ID通过URL访问,但是如果文档是类型A或B,则id不会清楚.

因此,我需要通过id加载文档,从其数据中确定其类型,然后将其传递给TypeAController或TypeBController.

现在,使用ui-router,我有类似的东西:

$stateProvider
.state('loading', {
    url: '/{documentId}',
    template: 'Loading...',
    controller: function ($stateParams, $state) {
        loadDocument($stateParams.documentId)
            .then(function (loadedDocument) {
                if (loadedDocument.type === 'A') {
                    $state.go('EditA');
                } else if (loadedDocument.type === 'B') {
                    $state.go('EditB');
                }
            })
    }
})
.state('A', {...})
.state('B', {...})
Run Code Online (Sandbox Code Playgroud)

加载状态加载文档,确定其类型,然后进入下一个状态.

然而,令人沮丧的是,我无法找到将加载的文档实际传递到下一个状态的方法!我可以创建一个全局服务,我可以插入文档,或者我只需传递文档的id并在每个状态下再次加载它(希望这次从缓存中),但这些方法是如此笨重而且其他一切关于角度和角度ui一直很光滑.

有什么建议?

angularjs angular-ui-router

10
推荐指数
2
解决办法
3万
查看次数