Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用java 1.6.0_29时出错_Java_Applet - Fatal编程技术网

使用java 1.6.0_29时出错

使用java 1.6.0_29时出错,java,applet,Java,Applet,我制作了一个java小程序,可以在学校运行java 1.6.0_23的linux计算机上正常工作。但我最近给自己买了一台mac电脑,并在上面安装了Java1.6.029。问题是,当我在新mac电脑上运行程序时,运行时会出现几个错误: Dentist1 is treating patient10 Dentist0 is treating patient11 Exception in thread "AWT-EventQueue-1" java.lang.NullPointerException

我制作了一个java小程序,可以在学校运行java 1.6.0_23的linux计算机上正常工作。但我最近给自己买了一台mac电脑,并在上面安装了Java1.6.029。问题是,当我在新mac电脑上运行程序时,运行时会出现几个错误:

Dentist1 is treating patient10


Dentist0 is treating patient11
Exception in thread "AWT-EventQueue-1" java.lang.NullPointerException
    at sun.awt.RepaintArea.paint(RepaintArea.java:249)
at apple.awt.ComponentModel.handleEvent(ComponentModel.java:263)
at java.awt.Component.dispatchEventImpl(Component.java:4811)
at java.awt.Component.dispatchEvent(Component.java:4565)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:679)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:638)
at java.awt.EventQueue$1.run(EventQueue.java:636)
at java.security.AccessController.doPrivileged(Native Method)
at    java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at     java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)


Dentist1 is treating patient12
at java.awt.EventQueue$2.run(EventQueue.java:652)
at java.awt.EventQueue$2.run(EventQueue.java:650)
at java.security.AccessController.doPrivileged(Native Method)
at       java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Exception in thread "AWT-EventQueue-1" java.lang.NullPointerException
at sun.awt.RepaintArea.paint(RepaintArea.java:249)
at apple.awt.ComponentModel.handleEvent(ComponentModel.java:263)
at java.awt.Component.dispatchEventImpl(Component.java:4811)
at java.awt.Component.dispatchEvent(Component.java:4565)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:679)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:638)
at java.awt.EventQueue$1.run(EventQueue.java:636)
at java.security.AccessController.doPrivileged(Native Method)
at  java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at  java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:652)
at java.awt.EventQueue$2.run(EventQueue.java:650)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


Dentist0 is treating patient13


Dentist1 is treating patient14´
如果您想知道,小程序应该模拟一个牙医办公室,在候诊室里有2名牙医和4把椅子。我有一个秘书线程类,确保只有4个病人进入候诊室,如果病人不忙,可以去看牙医,两个牙医线程等待病人,然后治疗他们

在前10名患者中,它似乎运行良好,然后我得到了这些错误,之后它继续运行,没有错误。
我不知道您是否可以在不看我的代码的情况下帮助我解决这个问题,但是如果您能提供一些建议,说明为什么只有更新的java版本才会出现这种情况,我将不胜感激。我的代码是否可能存在java 1.6.0_23无法检测到的错误?

编写能够正常工作的代码相当容易。bug就在那里,直到你改变操作系统、硬件或Java版本,bug才会出现。从Java 5.0升级到Java 6或从Java 6升级到Java 7时出现的问题中,有很大一部分都来自这些bug

很可能您正在破坏Swing对象模型,但Java6Update23没有注意到。但是,更可能是您使用的硬件/操作系统有所不同


我会下载Java6Update23来检查这一点,或者在两个系统上使用相同的版本

Java类的代码在处理空值时不是最好的。检查是否为Swing组件提供了一些空值,并将它们更改为非空值。

代码是否使用Swing组件?为了更快地获得更好的帮助,请发布。我怀疑您在代码中调用/使用了未分配的对象。默认情况下,它们将具有空值。请分享你的代码,这将有助于我们找出答案。谢谢。我会试试看,虽然我似乎无法在mac上安装旧版本。。