Dieser Emacs Mode ist eine Programmierumgebung für Java, die JavaSoft's Java Development Kit (JDK) in den Emacs integriert. Folgende Eigenschaften bietet JDE:
Der Java-Compiler erzeugt sogenannten Byte-Code. Dieser Code ist maschinenunabhängig, dass heisst man kann den erzeugten Code auf allen unseren Maschinen (Solaris, tru64 UNIX, Linux und Windows) ausführen.
Ein kleines Java-Programm, dass nur die Standard-Ausgabe (nur Text, keine GUI) benutzt. Der Filename muss der Class entsprechen, in diesem Falle ist der Filename hello.java aus dem dann das hello.class compiliert wird.
/** Das bekannte Hello, World! in Java */
class hello {
static public void main(String s[]) {
System.out.println("Hello, World!");
}
}
Hier noch ein Beispiel, dass das GUI benutzt.
import java.awt.*;
class myframe extends Frame {
int xy[]= {120,0}, ci=0, mi=0, turn=0;
Font fb = new Font("TimesRomanm", Font.BOLD, 36);
String m[]={"Easy", "Portable", "Secure", "Java"};
Color c[]={Color.red, Color.yellow, Color.green, Color.blue};
public void paint(Graphics g) {
g.setFont( fb );
g.setColor( c[mi] );
g.drawString(m[mi],xy[0],xy[1]);
if ( (xy[turn]+=3) < 200) return;
mi=++mi==m.length?mi=0:mi;
xy[turn]=(turn+1)*60;
xy[turn=1-turn]=0;
}
static public void main(String s[]) throws Exception {
myframe mf = new myframe();
for (int i=1; i<4; i++)
for (int j=0; j<200; j++) {
mf.repaint();
Thread.sleep(5);
}
System.exit(0);
}
myframe() {super("Java is easy"); setSize(300,300);show();}
}
Last but not least ein Beispiel, dass als Applet in eine Home-Page eingebettet werden kann. Zuerst die Java-Source HelloWorld.java, aus dem dann der Byte-Code HelloWorld.class erzeugt (compilert) wird.
import java.applet.Applet;
import java.awt.Graphics;
public class HelloWorld extends Applet {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
Hier das index.html, wo das Java-Applet eingebettet ist.
<HTML>
<HEAD>
<TITLE> A Simple Program </TITLE>
</HEAD>
<BODY>
Here is the output of my program:
<APPLET CODE="HelloWorld.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>