Difference between revisions of "Java home"
K (15 Version(en)) |
(→Exceptions) |
||
Zeile 41: | Zeile 41: | ||
} |
} |
||
</pre> |
</pre> |
||
+ | |||
+ | == Thread Dumps == |
||
+ | Zum Erzeugen eines Thread Dumps muss man seit JDK 1.5 kein SIGQUIT (kill -3 ...) an die JavaVM schicken, sondern es gibt ein eigenes Kommando daf+r |
||
+ | |||
+ | jstack <pid> >stack.txt |
||
+ | |||
+ | === Links === |
||
+ | *http://rfeest.blogspot.com/2008/02/thread-dumps-erzeugen.html |
||
+ | *https://tda.dev.java.net/ |
||
== Exceptions == |
== Exceptions == |
Version vom 07:34, 13 Februar 2009
Inhaltsverzeichnis
Runtime Environments
Links
Tips and Tricks
Rules Engines
Overview
Business Rules Management Systems (BRMS), decision tables (Entscheidungstabellen)
Links
- information
- standards
- implementations
JUnit
Version Info
Manchmal möchte man die Version einer junit-JAR herausbekommen. Das manifest enthält keine Versionskennzeichnung und die Klasse Version besitzt keine Main-Methode. Also braucht man eine kleine Klasse, die die Version auslesen kann.
import junit.runner.Version; public class JUnitVersion { public static void main(String[] args) { System.out.println(Version.id()); } }
Thread Dumps
Zum Erzeugen eines Thread Dumps muss man seit JDK 1.5 kein SIGQUIT (kill -3 ...) an die JavaVM schicken, sondern es gibt ein eigenes Kommando daf+r
jstack <pid> >stack.txt
Links
Exceptions
Links
Klonen von Objekten
Um bitweise Kopien von Objekten zu erzeugen, kann man die clone-Methode der Klasse Object verwenden. Dafür muss die zu klonende Klasse das Interface Clonable implementieren.
public class MyClass implements Cloneable { }
/** Objekt clonen (unter Verwendung von Object.clone()). * @see java.lang.Object#clone() * @return Clone oder null, falls Object.clone() CloneNotSupportedException lieferte */ public MyClass clone() { try { return (MyClass) super.clone(); } catch (CloneNotSupportedException e) { return null; } }