更改子类java中的类变量类型

我有一个名为“模块”的课程 public abstract class Module { protected Map ports; … public Map getPorts() { return ports; } } 以及一个名为Design的类,它是Module的子类 public class Design extends Module{ … //want to do this but doesn’t compile @override public Map getPorts() { return (Map) ports; //TopPort is a subclass of Port } } 基本上我想要做的只是将TopPorts添加到Design中,并且在从getPorts()函数返回时已经转换了类型。 我现在正在做的是在getPorts函数返回main之后将Ports转换为TopPorts,但这非常有问题,并且正在构建我的代码的人无法立即了解何时返回TopPort。 我也试过创建另一个函数而不是重写getPorts() //want to do this […]

Eclipse中源代码的相对路径

那么,Eclipse和相对路径…… 我想要实现的是与多个用户共享项目文件,其中源的确切位置可以针对每个用户而不同。 即,项目MyProject的src可能位于c:\version_control_foo\MyProject\src或c:\version_control_bar\MyProject\src甚至X:\foobar\MyProject\src ,同一个项目应该适用于所有人。 以下是我尝试的内容:我在Eclipse中设置一个变量C_TMP指向c:\version_control_foo ,并认为用户#2将使用不同的变量设置启动Eclipse。 然后我使用变量创建了一个链接的源文件夹。 这在我的.project文件中创建了这个条目: C_TMP 2 C_TMP C_TMP file:/C:/version_control_foo 变量的变化没有改变任何东西,这是有道理的,因为似乎项目复制了它的值。 根据这个问题,我想我可以通过让所有src文件夹相对于工作区位置来实现,但这不是一个很好的解决方案。 我认为maven将能够通过生成Eclipse项目来处理这个问题(对吧?)但是我想用纯Eclipse处理这个问题并且没有特殊的魔术脚本。 编辑:这就像我希望我用它来添加更多库一样。 为什么它不适用于我的源文件夹? Edit2:基于评论的一些澄清。 包含源文件夹和文件的整个项目在版本控制中可用。 但是这些文件的实际路径对每个用户都是唯一的。 从版本控制中检出不涉及任何类型的复制到本地位置,可以为所有人定义相同。 链接的源文件夹意味着我可以将其定义为相对于变量。 然后可以为每个用户设置此变量。 问题是,变量的值似乎被复制到.project文件中,而不是通过Eclipse中设置的值。

MongoDB全文搜索索引:错误:文本索引太多,为什么?

我有一个问题,我有收集,我想将文本搜索索引设置为2个字段(描述和标题)。 但当我添加第二个索引时,我得到以下错误,文本搜索停止工作。 { “serverUsed” : “localhost/127.0.0.1:27017” , “ok” : 0.0 , “errmsg” : “too many text index for: testdb.users”} 当我删除一个索引搜索再次开始工作。 问题是什么? 一个集合仅支持一个字段的全文搜索索引???? 我在windows下使用当前版本的mongodb,我正在使用mongodb java驱动程序API。 谢谢

如何检查Double值是否为负数?

如标题所示,我如何检查特定的Double是否为负数。 这是我如何获得Double实例 (Double.parseDouble(data[2]) 想法,建议?

检查IPv4地址是否在私有范围内

在Python中,使用IPy模块可以执行以下操作: >>> ip.iptype() ‘PRIVATE’ 是否有一个库或简单的方法在Java中做同等的工作?

JAR文件无法在Mac上打开

我一直试图在我的Mac上打开一个JAR文件但没有成功。 它说无法打开JAR文件并要求我在控制台中查找任何错误消息。 这是控制台消息。 我怀疑问题是在第一行本身,但我不是来自软件背景,所以不知道这是否足以让任何知道Java的人知道问题是什么。 我确实更新了我的软件,所以我假设我有最新版本的Java虽然我不知道如何100%确保–Java.com网站只是告诉我更新我的Mac上的整体软件并说会也照顾Java的最新版本。 请帮忙! 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] Exception in thread “main” 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] java.lang.UnsupportedClassVersionError: Bad version number in .class file 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] at java.lang.ClassLoader.defineClass1(Native Method) 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] at java.lang.ClassLoader.defineClass(ClassLoader.java:675) 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) 5/26/09 7:48:01 AM [0x0-0x72072].com.apple.JarLauncher[1079] at […]

没有实现绑定 – Java Guice

新手在这里试图使用一个虚拟Java Facebook应用程序,使用Guice将数据库dependency injectionFacebook工厂,但继续让Guice错误告诉我: ###在查找使用@ com.example.storage.annotations.SystemDb注释的com.example.storage.Db时,没有使用@ com.example.storage.annotations.SystemDb()注释的com.example.storage.Db的实现。 ()for com.example.facebook.client.exceptions.FacebookExceptionHandlerDb中的参数0,位于com.example.facebook.client.guice.FacebookClientModule.configure ###无法在com.example.facebook.statsd.StatsdClient中找到合适的构造函数。 类必须有一个(也是唯一一个)使用@Inject注释的构造函数或一个非私有的零参数构造函数。 at com.example.facebook.statsd.StatsdClient.class,同时在com.example.facebook.client.exceptions.FacebookExceptionHandlerDb中找到参数1的com.example.facebook.statsd.StatsdClient。 com.example.facebook.client.guice.FacebookClientModule.configure 应用代码: app.java package com.example.facebook; import com.google.inject.Guice; import com.restfb.Connection; import com.restfb.types.Post; import com.example.facebook.client.FacebookClientFactory; import com.example.facebook.client.RobustFacebookClient; import com.example.facebook.client.guice.FacebookClientModule; import com.example.facebook.statsd.StatsdClient; public class App { public static void main ( String[] args ) { final FacebookClientFactory facebookClientFactory = Guice.createInjector(new FacebookClientModule()).getInstance(FacebookClientFactory.class); //error from line above final […]

Android应用程序意外崩溃

Android App初学者在应用程序无法打开时遇到一些问题。 刚开始与它合作今晚。 eclipse中的代码没有显示错误。 就在我尝试从模拟器运行它时意外关闭。 主要来源 :package com.example.solidshellsecurity; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.content.Intent; import android.net.Uri; import android.util.Log; import android.view.View; public class MainActivity extends Activity { public static final String TAG = “SolidShellSecurity”; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this […]

使用拖放项目制作类似列表的小部件的最简单方法是什么?

我能想到的最简单的例子是播放列表,您可以将歌曲拖动到列表中的其他位置。 我用Swing做了很多事情,但我从来没有见过像这样的例子。

失去焦点后,Javafx弹出窗口不会隐藏在其他应用程序后面

所以我的问题,正如标题中所说的那样,是关于Javafx(即2.2)Popup在某些方面的行为。 大多数情况下,你得到一个弹出窗口,你给它一个窗口作为它的父母,你给它一些场景,它往往相对独立。 这一切都很好,但是,在我的情况下,我需要一个弹出窗口,当事件发生时,它会将自己锚定到特定位置(窗口),特定位置。 然后,当窗口消失时(最小化,屏幕外,无论如何),弹出窗口将会消失,当它完成时移动,并且在所有的本质和function中,只是具有自定义形状的窗口的物理扩展。 当然,现在有很多细微差别,而且大部分内容都很有效。 我似乎无法弄清楚的唯一一件事就是通常在像Windows 7 64位这样的平台上。 你打开两个程序,好吧。 然后,如果程序重叠一点,无论哪个有焦点都可以显示整个程序,而另一个给人的印象是“在另一个窗口后面”。 (当另一个人专注于同一个地方时,无论窗口是否真的将应用程序图形渲染到窗口后面,我都不确定。) 通常,javafx也支持这个function。 但出于某种原因,javafx中的Popup类(参见此处的文档)并没有这样做。 无论如何,它总是在它显示的任何内容之上。 为了完整性,这里是我非常简单的弹出代码(至少有关于显示它和它的属性的部分): Popup myPop = new Popup(); //************************Popup Property Setter************************** //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& myPop.setWidth(width); myPop.setHeight(initialHeight); myPop.setAutoHide(false); myPop.setAutoFix(false); myPop.setHideOnEscape(false); myPop.setX(xLocation); myPop.setY(yLocation); //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //**********************end of Popup Properties************************** myPop.getContent().add(main_anchor); myPop.show(FileChooserWindow.get_stage()); 主锚有一些不同的组件,我包含在’myPop’弹出窗口内,而FileChooserWindow是一个非空的父窗口,在此方法调用时将无exception地打开。 这是我所指的行为的截图。 请注意pdf中突出显示的文本,即我的光标当前具有焦点的位置。 此外,弹出窗口固定的窗口可以在从左侧伸出的pdf背面看到。 你们给予的任何帮助都将非常感激。 我真的希望我不必检查活动进程以及它们相对于弹出窗口的位置,这是危险地接近我的知识边界,听起来像一个完整的PITA。