草庐IT

具有泛型集合的类的 Java 适当扩展设计

假设我得到了A、B、C类B延伸A和C还扩展了A.现在我有2个不同的类,我们称它们为MyClassB和MyClassC与ArrayList的成员一起和ArrayList恭敬地。由于在MyClassB中进行了许多操作和MyClassC相同且仅在不同类型的ArrayList上完成,我想创建一个新的抽象类MyClassA它将在ArrayList上执行相同的操作对于两个类,自A是Action相同的公共(public)部分。所以我尝试在新的MyClassA中创建一个方法接收一个列表作为参数并应该对该列表执行操作的类。但是,我不能通过ArrayList到它期望的方法ArrayList.那么我该怎么做

java - 为什么 GCJ 找不到我导入的包中的类?

我想将小型Java应用程序编译为Windows可执行文件。应用程序很小,只有一个主类,但它使用ApachePOI。当我编译它时,一切正常,只要我将POIJar放入类路径参数中即可。但是当涉及到链接时,GCJ无法解析对POI包中类的引用。消息都是这样的:undefinedreferencetp'org::apache::poi:hssf:usermodel:HSSFWorkbook::class$'要链接我的应用程序,我必须做什么? 最佳答案 你必须将导入的Jars单独编译成.so库。确保在编译库和编译代码时都在--classpath

java - 为什么 Class.getPackage 会为来自不同包的类返回相同的包?

我做了一个新的ClassLoader并让它定义一个新的Class,这意味着新类应该在一个新的命名空间中,据我所知。奇怪的是,当我调用Class.getPackage在新类上,它返回的对象与在我的主命名空间中的任何其他类上调用getPackage返回的对象完全相同。根据JVMspec:Theruntimepackageofaclassorinterfaceisdeterminedbythepackagenameanddefiningclassloaderoftheclassorinterface.所以换句话说,如果你有两个类在同一个包中,但是被不同的类加载器加载,它们被认为是在不同的包中

java - 在 NetBeans 中添加默认包的类

我有一个名为"stdlib.jar"的jar文件。它的"DefaultPackage"中有许多类。我已将此stdlib.jar添加到我的NetBeans库中。并且还“构建”-ed它而不使用stdlib.jar中的任何内容。这样stdlib.jar就可以添加到我的"./dist/lib"文件夹中。但我仍然无法使用stdlib.jar中的任何类我应该怎么做才能重用stdlib.jar中的任何类? 最佳答案 强烈建议不要为库甚至项目使用“默认包”包。如果您使用默认包,则类名称应该是唯一的,否则它们将覆盖所有java.lang类。现在谈谈你

Java,读取txt文件最快的类

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我必须在我的程序中读取txt文件。我目前正在使用FileReader和BufferedReader。我尝试使用Scanner,但它比FileReader和BufferedReader慢。有没有什么类(class)可以更快地读取文件?它必须用Java语言编写。我需要从文本文件中读取所有单词(由空格分隔的字符串)

java - 在 Eclipse 中使用 Ant 的类路径

我有一个在命令行上运行良好的Antbuild.xml文件:它编译、构建JAR,而且我能够很好地从JAR执行主要方法。build.xml文件引用了分散在各处的几个第三方库。构建JAR时,脚本不会将所有第三方库包含到JAR本身中。相反,它将它们的路径放入JAR的list中。这有助于使我的JAR保持整洁。我希望能够在Eclipse中编辑和调试我的项目,但我找不到这样做的简单方法。我可以让我的项目使用Ant文件来构建项目,这似乎可行。但是,Eclipse无法找到第三方库,因此Eclipse有两个问题:它显示(在文本编辑器中)很多编译错误,因为许多类是未定义的,并且它无法执行JAR。我可以通过在

java - 使用 2 个不同的类打印偶数和奇数

这是我在一次工作面试中被问到的问题:您有2个不同的类(实现Runnable),比如EvenThread和OddThread。顾名思义,EvenThread仅打印偶数,而odd线程仅打印奇数,请考虑0-100的范围。classEvenThreadimplementsRunnable{@Overridepublicvoidrun(){for(inti=0;i现在我们需要以这种方式强制执行一种机制,即按顺序打印数字(即0、1、2、3、4、....等等)。我在StackOverflow上看到过很多类似的问题,但是他们只有一个类来打印数字,并且在其中调用了2个同步方法。有哪位高手可以推荐一下吗?

java - Java中数组的类是什么

数组是对象,所有对象都来自一个类。如果我执行以下代码:publicclassTest{publicstaticvoidmain(String[]args){Stringstr="Hello";System.out.println(str.getClass());}}输出是classjava.lang.String。但是如果我执行以下操作:publicclassTest{publicstaticvoidmain(String[]args){intarr[]=newint[10];System.out.println(arr.getClass());}}输出是class[I。我的问题是:数

java - 不应使用 "com.sun.*"和 "sun.*"包中的类 Sonar issue for Jersey client

我正在使用jersey客户端进行休息调用。我的代码的导入是:importcom.sun.jersey.api.client.Client;importcom.sun.jersey.api.client.ClientResponse;importcom.sun.jersey.api.client.WebResource;一切正常。我正在使用Sonar检查我的代码质量。Sonar显示的主要问题是:Classesfrom"com.sun."and"sun."packagesshouldnotbeused这实际上是使用来自sun的类的不良做法吗?如果是,有哪些替代方案?

java - 在实现接口(interface)的类上强制单例模式

我最好用一个例子来解释这个问题。我有一个可用于访问数据的接口(interface)模型。模型可以有不同的实现,它可以表示各种格式的数据,比如XMl、txt格式等。模型与格式无关。假设这样的实现之一是myxmlModel。现在我想强制myxmlModel和Model的所有其他实现遵循SingletonPattern。通常的方法是使myxmlModels构造函数私有(private)并提供一个静态工厂方法来返回myModel类的实例。但问题是interface不能有静态方法定义,结果我不能强制执行特定的工厂方法定义模型的所有实现。因此,一种实现可能以提供getObject()结束,而其他实