调用generics类型的构造函数

如果我有这样的抽象类: public abstract class Item { private Integer value; public Item() { value=new Integer(0); } public Item(Integer value) { this.value=new Integer(); } } 还有一些来自Item的类如下: public class Pencil extends Item { public Pencil() { super(); } public Pencil(Integer value) { super(value); } } 我不明白为什么我不能使用generics调用构造函数: public class Box { T item; public Box() { item=new T(); // […]

听众有更好的练习吗?

假设我有一个swing GUI,我想听MouseEvents 。 你认为谁应该是听众课,谁应该负责? 实施它的最佳或首选方式是什么? 任何意见? 我通常会这样: public class MyPanel extends JPanel implements MouseListener{ private JTable table; public void foo(){ table.addMouseListener(this); } /* MouseListener */ //Implement MouseListener here. } 有没有更好的办法? 编辑:谢谢大家的智慧和帮助。 我很感激。

java.util.zip.ZipException:CEN标头无效(签名错误)

在执行此(相对简单的)代码时,我收到此错误: ZipFile zf = new ZipFile(fn); Enumeration eze = zf.entries(); while (eze.hasMoreElements()) { ZipEntry ze = eze.nextElement(); System.out.println(ze.getName()); } zf.close(); 其实。 有趣的是,我在java-sun-6u32和java-1.6.0-openjdk-amd64上得到它,但java-sun-7u4成功了。 解压缩本身似乎处理得很好。 我猜这意味着这些zip文件可能是由java 7理解的一些较新版本的zip创建的,但之前的版本没有。 但是,任何见解都会受到赞赏。 另外,因为在制作中我真的没有选择使用java 7,任何使早期版本的java都能理解这个新版本的zip(当然,如果事实上这就是问题所在。) 谢谢!

无法在JAR执行时找到或加载主类

我完成了我的项目(在NetBeans )并导出了Jar文件(我在导出Jar之前正确地在项目属性中设置了我的主类): 现在,这是我的JAR : 运行Jar时显示此错误(在命令行页面中): Could not find or load main Class on JAR executing 这是我的MANIFEST.MF信息: Manifest-Version: 1.0 Ant-Version: Apache Ant 1.9.1 Created-By: 1.7.0_11-b21 (Oracle Corporation) Class-Path: lib/mysql-connector-java-5.1.18-bin.jar X-COMMENT: Main-Class will be added automatically by build Main-Class: Project.LoginFrame 我的所有课程都在这里: 我也在命令行中尝试: 我的项目此时已执行,但所有图片(位于文件夹中)都没有显示,而且还发生了sql Exception : 更新: package Project; import javax.imageio.ImageIO; import javax.swing.*; import javax.swing.plaf.nimbus.NimbusLookAndFeel; import java.awt.event.ActionEvent; import […]

Gmail返回534-5.7.14请通过网络浏览器登录

我在尝试从一个Gmail帐户向另一个Gmail帐户发送电子邮件时发现此错误。 如何解决这个错误? 帮助我。 有一个错误: 534-5.7.14请通过网络浏览器和534-5.7.14登录,然后重试。 534-5.7.14了解更多信息,请点击534 5.7.14 https://support.google.com/mail/answer/78754 hw7sm51688135pac.12 – gsmtp

`copy(List dest,List src)`和`copy(List dest,List src)之间的区别

我正在尝试通过阅读以下内容来学习Java Generics通配符: http : //www.angelikalanger.com/GenericsFAQ/FAQSections/TypeArguments.html#FAQ103 材料中有一个例子: public class Collections { public static void copy (List dest, List src) { for (int i=0; i<src.size(); i++) dest.set(i,src.get(i)); } } 我想知道我是否可以更改方法签名如下: public static void copy(List dest, List src) { ↓ public static void copy(List dest, List src) { 这两种方法之间有什么区别吗? 例子将不胜感激。

如何在java中将字符串日期转换为Timestamp?

我想在java中将字符串Date转换为Timestamp。 我写了以下编码。我已经宣布date1的日期是:7-11-11 12:13:14。 SimpleDateFormat datetimeFormatter1 = new SimpleDateFormat( “yyyy-MM-dd hh:mm:ss”); Date lFromDate1 = datetimeFormatter1.parse(date1); System.out.println(“gpsdate :” + lFromDate1); Timestamp fromTS1 = new Timestamp(lFromDate1.getTime()); 我想将7-11-11 12:13:14这个字符串日期转换为时间戳。 现在我的输出是0007-11-11 00:13:14.000000 +05:30:00但我希望(7-11-11 12:13:14)这种格式的时间戳日期。 谁能帮帮我吗。 谢谢。

将现有JAR转换为OSGi-bundle

我有一个JAR文件,我需要转换为OSGi包。 我没有JAR文件的原始源代码。 我尝试使用以下答案: 如何从jar库创建OSGi包? 但是,它们已经过时了。 编辑:我需要转换几个,但固定数量的jar子。

Java – 使用nio的ReadObject

在传统的阻塞线程服务器中,我会做这样的事情 class ServerSideThread { ObjectInputStream in; ObjectOutputStream out; Engine engine; public ServerSideThread(Socket socket, Engine engine) { in = new ObjectInputStream(socket.getInputStream()); out = new ObjectOutputStream(socket.getOutputStream()); this.engine = engine; } public void sendMessage(Message m) { out.writeObject(m); } public void run() { while(true) { Message m = (Message)in.readObject(); engine.queueMessage(m,this); // give the engine a message with this as […]

如何在Java中停止线程?

我用GUI创建了一个java程序,我想要一个停止按钮function,当用户点击停止按钮时,必须停止程序。 在我的程序中,主线程启动其他10个线程,我希望每当单击停止按钮时,必须在主线程之前停止所有10个线程。 其次,我还希望每当这10个线程的任何线程都被停止时,它必须首先关闭它之前打开的所有资源,比如连接到数据库等。 我已经实现了代码…….. 现在有一个问题。 我的线程类是这样的: public class ParserThread implements Runnable { private volatile boolean stopped = false; public void stopTheThread() { stopped = true; } : : } 以下是从函数start()启动10个线程的主线程 public class Main() { Thread [] threads; public void start() { for(int i = 0; i < 10; i++) { threads[i] = new Thread(new ParserThread()); […]