- Model Source Java -
_1 Main-Methode
_2 Class Object
_3 Set() und Get()
_4 for - Schleife
_5 Casting
_6 if else
_7 Array[]
_8 args (Echo)
_9 this - Operator
10 Instanzen einer Klasse
11 Konstruktor/Exception
12 Instanzenzaehler
13 Vererbung
14 CompareTo()
15 Vector - Sortierung
16 FileReader() -Writer()
17 System.in.read()
18 JDBC:ODBC - Access
19 Applet +Multimedia
20 Frame (Panel,Button)
21 Frame - schliessbar
22 FileReader - in String
23 Substring zwischen Tags
24 Ticker - Laufschrift
25
26
27
28
29
30


(c)2001 Andi Schimmelpfennig - First Register 05.08.2001 - Last Update 17.08.2001
1. Main-Methode ^ public class Start {
   public static void main (String[] args) {
   }
}
2. Klassenobjekt ^ Person hugo = new Person(); hugo.vorname = "Hugo"; hugo.vorstellen();
class Person {
   public String vorname;
   public void vorstellen() {
       System.out.println("\nHello, I'm "+vorname+".")
   }
}
mehr unter 10
3. Set() und Get() ^ Person2 hugo = new Person2(); hugo.setVorname("Hugo") ; hugo.vorstellen();
class Person2 {
   private String vorname;
   public void setVorname(String parVorname) {
      vorname = parVorname;
   }
   public String getVorname() {
      return vorname;
   }
   public void vorstellen() {
      System.out.println("\nHello, my name is "+getVorname()+".");
   }
}
4. for - Schleife ^ int mZahl=5,mZaehler;
for (mZaehler=1; mZaehler<=10; mZaehler++) {
   System.out.println(mZaehler+" * "+mZahl+" = "+mZaehler*mZahl);
}
5. Casting ^ int integerWert;
double doubleWert;
integerWert= (int) doubleWert;
System.out.println("(int) 1.0 = "+integerWert);
6. if else ^ private String vorname;
if (vorname == null)
   vorname = "Hans";
else
   vorname = "Klaus";
mehr dazu unter 10
7. Array ^ int [] a = { 2, 3, 5};
System.out.println("a [2] = " + a[2]);
System.out.println("Laenge Feld a = " + a.length);
Person[] myMensch = new Person[10]; // Klassen
8. args (Echo) ^ public class Echo {
   public static void main (String[] args) {
      int i,anz = args.length;
      for(i = 0; i < anz; i++)
      if( anz > 0)
         System.out.println("Arg "+i+" : " + args[i]);
   }
}
9. this - Operator ^ Person myMensch = new Person(); myMensch.setNachname("Metzger"); myMensch.setVorname("Georg"); System.out.println(myMensch.getName());
public class Person {
   public String nachname, vorname;
   public void setNachname(String s) {
      this.nachname = s;
   }
   public void setVorname(String s) {
      this.vorname = s;
   }
   public String getNachname() {
      return this.nachname;
   }
   public String getVorname() {
      return this.vorname;
   }
   public String getName() {
      return this.getNachname() + ", " + this.getVorname();
   }
}
mehr unter 10
10. Instanzen einer Klasse ^ Person2[] myMensch = new Person2[10];
myMensch[0]=new Person2();
myMensch[0].setNachname("Metzger");
myMensch[0].setVorname("Georg");
myMensch[0].setGeschlecht('m');
myMensch[0].setGroesse(1.87);
myMensch[2]=new Person2();
myMensch[2].setNachname("Meyer");
myMensch[2].setVorname("Lotte");
myMensch[2].setGeschlecht('w');
myMensch[2].setGroesse(1.74);
myMensch[0].heiraten(myMensch[2]);
System.out.println("\n\nHeirat von Georg und Lotte!");
for (int i=0;i!=2;i++) {
   System.out.println("\n\t"+myMensch[i].getName());
   System.out.println("\t" +myMensch[i].getInfo());
}
myMensch[0].scheiden();
System.out.println("\n\nScheidung von Georg und Lotte!");
for (int i=0;i!=2;i++) {
   System.out.println("\n\t"+myMensch[i].getName());
   System.out.println("\t" +myMensch[i].getInfo());
}
public class Person2 {
   private String nachname, vorname;
   private char geschlecht;
   private double groesse;
   private boolean famstand;
   private Person2 partner;
   // Setzen der Eigenschaften
   public void setNachname(String s) {
      this.nachname = s;
   }
   public void setVorname(String s) {
      this.vorname = s;
   }
   public void setGeschlecht(char c){
      this.geschlecht = c;
   }
   public void setGroesse(double d){
      this.groesse = d;
   }
   // Holen der Eigenschaften
   public String getNachname() {
      return this.nachname;
   }
   public String getVorname() {
      return this.vorname;
   }
   public char getGeschlecht() {
      return this.geschlecht;
   }
   public double getGroesse() {
      return this.groesse;
   }
   // Eigenschaften bearbeiten
   public void heiraten(Person2 s) {
      this.partner=s;
      s.partner=this;
      this.famstand=true;
      this.partner.famstand=true;
   }
   public void scheiden() {
      this.partner.famstand=false;
      this.partner.partner=null;
      this.partner=null;
      this.famstand=false;
   }
   // Prüfung der Änderung der Eigenschaften
   public String getPartner() {
      return this.partner.getName();
   }
   // Ausgabe der Eigenschaften
   public String getInfo() {
      if (famstand)
         return this.getGeschlecht() + ", " + this.getGroesse()
         +", verheiratet mit " + this.getPartner();
      else
         return this.getGeschlecht() + ", " + this.getGroesse()+ ", ledig";
   }
   public String getName() {
      return this.getNachname() + ", " + this.getVorname();
   }
}
11. Konstruktor/Exception ^ Einbindung von class Person2 notwendig (^eins hoch)
Person2[] myMensch = new Person2[5];

// Personen müssen erzeugt werden (siehe ^eins hoch)

try { // immer notwendig, wenn Class throws Exception
   Hotel hotel = new Hotel(5);
   hotel.einmieten(myMensch[1]);
   hotel.einmieten(myMensch[2]);
   hotel.einmieten(myMensch[0]);
   hotel.status();
   System.out.println("\nnoch "+hotel.freieZimmer()+" Zimmer frei");
}
catch (java.lang.Exception e) {
   System.out.println("Fehler");
}
public class Hotel {
   private int rooms, roomCount = 0;
   private Person3[] gaeste;
   public Hotel(int pRooms) throws Exception {
      if (pRooms <= 0) {
         throw new Exception ("Hotel braucht Zimmer >0!");
      }
      this.rooms = pRooms;
      gaeste = new Person3[this.rooms];
   }// Ende Hotel
   public void einmieten(Person3 pPerson) throws Exception {
      if (this.roomCount < this.rooms) {
         this.gaeste[this.roomCount] = pPerson;
         this.roomCount++;
      }else{
         throw new Exception("Hotel ist voll!");}
   }//Ende einmieten
   public int freieZimmer () {
      return this.rooms - this.roomCount;
   }// Ende freieZimmer
   public void status() {
      System.out.print("\nEingemietet im Hotel mit 5 Zimmern:\n\n");
      for (int i = 0; i < roomCount; i++) {
         System.out.println("\t"+this.gaeste[i].getName());
      }
   }// Ende status
}//Ende Hotel
mehr zu 'Konstruktor' unter 12
12. Instanzenzaehler ^ Person3[] myMensch = new Person3[5];
myMensch[0]=new Person3("Georg","Metzger",'m',1.87);
myMensch[1]=new Person3("Max","Mueller",'m',1.92);
myMensch[2]=new Person3("Lotte","Meyer",'w',1.74);
myMensch[3]=new Person3("Gertrud","Schmidt",'w',1.68);
myMensch[4]=new Person3("Jochen","Schneider",'m',1.59);
System.out.println("\n"+Person3.getZaehler()+" Personen");
public class Person3 {
   private String nachname, vorname;
   private char geschlecht;
   private double groesse;
   private boolean famstand;
   private Person3 partner;
   private static int pZaehler;
   // Konstruktor
   public Person3(String parVorname,String parNachname, char parGeschlecht, double parGroesse) {
      vorname=parVorname;
      nachname=parNachname;
      geschlecht=parGeschlecht;
      groesse=parGroesse;
      pZaehler++;
   }
   public static int getZaehler() {
      return pZaehler;
   }

   // alle weiteren get-Methoden wie in class Person2 unter 10

}
13. Vererbung ^ Einbindung von class Person3 notwendig (^eins hoch)
Person3[] myMensch = new Person3[10];
Student[] myStudent= new Student[10];
myMensch[0]=new Person3("Georg","Metzger",'m',1.87);
myMensch[1]=new Student("Max","Mueller",'m',1.92,1000);
myMensch[2]=new Person3("Lotte","Meyer",'w',1.74);
myMensch[3]=new Person3("Gertrud","Schmidt",'w',1.68);
myMensch[4]=new Student("Jochen","Schneider",'m',1.59,500);
System.out.println("\n"+Person3.getZaehler()+" Personen, einige davon auch Studenten.");
for (int i=0;i!=Person3.getZaehler();i++) {
   System.out.println("\n\t"+myMensch[i].getName());
   System.out.println("\t" +myMensch[i].getInfo());
}
public class Student extends Person3 {
   private double foerderung;
   public Student(String parVorname,String parNachname,char parGeschlecht,double parGroesse, double parFoerderung) {
      this(parVorname,parNachname,parGeschlecht,parGroesse);
      foerderung=parFoerderung;
   }
   public Student(String parVorname,String parNachname,char parGeschlecht,double parGroesse) {
      super(parVorname,parNachname,parGeschlecht,parGroesse);
   }
   public double getFoerderung() {
      return foerderung;
   }
   public String getName () {
      return super.getName() + ", Student";
   }
   public String getInfo () {
      return super.getInfo() + getFoerderung();
   }
}
14. CompareTo() ^ Person4[] myMensch = new Person4[10];
myMensch[0]=new Person4("Georg","Metzger");
myMensch[1]=new Person4("Max","Schmidt");
myMensch[2]=new Person4("Lotte","Meyer");
myMensch[3]=new Person4("Gertrud","Schmidt");
System.out.println(myMensch[0].getName());
System.out.println(myMensch[2].getName());
if (myMensch[0].compareTo(myMensch[2])==0)
   System.out.println("\nNachnamen der Personen sind gleich.");
else{
   System.out.println("\nNachnamen der Personen nicht gleich.");
}
System.out.println("\n\t"+myMensch[1].getName());
System.out.println("\t" +myMensch[3].getName());
if (myMensch[1].compareTo(myMensch[3])==0)
S   ystem.out.println("\nNachnamen der Personen sind gleich.");
else{
   System.out.println("\nNachnamen der Personen nicht gleich.");
}
class Person4 implements Comparable {
   private String nachname, vorname;
   private char geschlecht;
   private double groesse;
   // Konstruktor
   public Person4(String parVorname,String parNachname) {
      vorname=parVorname;
      nachname=parNachname;
   }
   public String getNachname() {
      return this.nachname;
   }
   public String getVorname() {
      return this.vorname;
   }
   public String getName() {
      return this.getNachname() + ", " + this.getVorname();
   }
   public int compareTo(Object pPerson) {
      if (this.getNachname()==((Person4) pPerson).nachname)
         return 0;
      else
         return 1;
   }
}
mehr dazu unter 15
15. Vector - Sortierung ^ Vector personen = new Vector();
Person8[] myMensch = new Person8[10];
myMensch[0]=new Person8("Gertrud","Schmidt");
myMensch[1]=new Person8("Georg","Metzger");
myMensch[2]=new Person8("Jochen","Schneider");
myMensch[3]=new Person8("Max","Mueller");
myMensch[4]=new Person8("Lotte","Meyer");
System.out.println(Person8.getZaehler()+" Personen sortiert:\n");
// Einlesen
for (int i=0;i    personen.add(myMensch[i]);
}
// Sortieren
Collections.sort(personen);
// Ausgeben
for (int i=0;i    Person8 p = (Person8) personen.elementAt(i);
   System.out.println("\t"+p.getNachname()+", "+p.getVorname());
}
class Person8 implements Comparable {
   private String nachname, vorname;
   private char geschlecht;
   private double groesse;
   private boolean famstand;
   private static int pZaehler;
   public Person8(String parVorname,String parNachname) {
      vorname=parVorname;
      nachname=parNachname;
      pZaehler++;
   }
   public String getNachname() {
      return this.nachname;
   }
   public String getVorname() {
      return this.vorname;
   }
   public static int getZaehler() {
      return pZaehler;
   }
   public int compareTo(Object pPerson) {
      int i=1;
      if (this.getNachname().equals(((Person8) pPerson).nachname))
         i= 0;
      if ((this.getNachname().compareTo(((Person8) pPerson).nachname))>0)
         i= 1;
      if ((this.getNachname().compareTo(((Person8) pPerson).nachname))<0)
         i= -1;
      return i;
   }
}
16. FileReader() und -Writer() ^ import java.io.*;
class Datei {
   public static void main(String args[]) throws IOException {
      // in Datei schreiben
      FileWriter ausgabe = new FileWriter("C:/test.txt");
      String dateitext = "Na dann schaun wa mal!";
      for (int i=0; i!=dateitext.length(); i++)
         ausgabe.write(dateitext.charAt(i));
      ausgabe.close();
      // aus Datei lesen
      FileReader eingabe = new FileReader("C:/test.txt");
      StringBuffer buffer = new StringBuffer("");
      int zeichen = 0;
      while ((zeichen=eingabe.read()) != -1)
         buffer.append((char) zeichen);
      dateitext = buffer.toString();
      System.out.println("\n\tIn Datei geschrieben: "+dateitext);
      eingabe.close();
   }
}
17. System.in.read() ^ public class Konsole {
   public static void main(String[] args) {
      int eingabe;
      char eingabeZeichen;
      String eingabeZeichenkette = "";
      System.out.print("\n\tBitte geben sie irgendetwas ein: ");
      try{
         while ((eingabe = System.in.read() )!= 13){
            eingabeZeichen = (char)eingabe;
            eingabeZeichenkette = eingabeZeichenkette + eingabeZeichen;
         }//Ende while
      }//Ende try
      catch(Exception e){
         System.out.println("Fehler bei der Konsoleneingabe");
      }//Ende try-catch
      System.out.println("\n\tSie haben " + eingabeZeichenkette + " eingegeben.");
   }//Ende main
}//Ende Konsole
18. JDBC:ODBC - Access ^ import java.sql.*;
class MyDatabaseApp {
   Connection con;
   String sqlString;
   Statement befehl;
   ResultSet rs;
   public static void main(String args[]) {
      MyDatabaseApp dbApp = new MyDatabaseApp();
      dbApp.loadDriver();
      dbApp.connectToDatabase("Beispiel1");
      dbApp.addRecord();
      dbApp.displayTable();
   }
   public void loadDriver() {
      try{
         Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //java.lang.class
      }catch (ClassNotFoundException e){
      System.out.println("Diese Klasse existiert nicht!");
      }
   }
   //ODCB-Datenquelle in Systemsteuerung angeben
   public void connectToDatabase(String parDataSource) {
      try{
         con = DriverManager.getConnection("jdbc:odbc:" + parDataSource, "administrator", "");
      }
      catch (SQLException e){
         System.out.println(e.getMessage());
      }
   }
   // Datensatz hinzufügen, entsprechende DB muss vorliegen
   public void addRecord() {
      try{
         if (befehl == null)
            befehl = con.createStatement();
         sqlString = new String("INSERT INTO Hotels (Hotel, Zielgebiet, Ort, Sterne) VALUES('Pension Playa', 'Spanien', 'Madrid', 4)");
         befehl.executeUpdate(sqlString);
      }
      catch (SQLException e){
         System.out.println(e.getMessage());
      }
   }
   public void displayTable() {
      try{
         if (befehl == null)
            befehl = con.createStatement();
         sqlString = new String("SELECT * FROM Hotels");
         rs = befehl.executeQuery(sqlString);
         while (rs.next()){
            System.out.print(rs.getShort("Hotelnr") + " " + (char) 9);
            System.out.print(rs.getString("Hotel") + (char) 9);
            System.out.print(rs.getString("Zielgebiet") + (char) 9);
            System.out.print(rs.getString("Ort") + (char) 9);
            System.out.println(rs.getInt("Sterne"));
         }
      }
      catch (SQLException e) {
         System.out.println(e.getMessage());
      }
   }
}
19. Applet +Multimedia ^ import java.applet.*;
import java.awt.*;
public class JavaLogo extends Applet{
   private Image img;
   AudioClip clip;
   public void init(){
      img = this.getImage(this.getCodeBase(), "fish.gif");
      clip = this.getAudioClip(this.getCodeBase(), "clip.wav");
      clip.loop();
   }//ende init()
   public void stop(){
      clip.stop();
   }//ende stop
   public void paint(Graphics g){
      g.drawImage(img, 0, 0, this.getSize().width, this.getSize().height, this);
   }//ende paint
}// ende JavaLogo
Einbindung in HTML-Seite:

   -applet-
      code=JavaLogo.class
      height=200
      width=300>
   -/applet-
20. Frame (Panel,Button) ^ import java.awt.*;
import java.awt.event.*;
class App extends Frame {
   Label text = new Label("Tach!");
   public static void main(String[] args) {
      App programm = new App();
   }
   public App() {
      super("AndiSoft");
      Button endButton = new Button("close");
      Button editButton= new Button ("change");
      Button panelButton= new Button ("PANEL");
      Panel panel = new Panel();
      endButton.addActionListener(new EndControl());
      editButton.addActionListener(new EditControl());
      add ("South",endButton);
      add ("East",editButton);
      add ("Center",text);
      add (panel);
      addWindowListener(new FrameControl());
      setLayout(new GridLayout (2,3));
      panel.add(panelButton);
      setSize(300,100);
      show();
      System.out.println("Applikation gestartet!");
   }
   class EndControl implements ActionListener {
      public void actionPerformed (ActionEvent e) {
         System.out.println("Applikation beendet!");
         System.exit(0);
      }
   }
   class EditControl implements ActionListener {
      public void actionPerformed (ActionEvent e) {
         String labelText=e.getActionCommand();
         text.setText(labelText);
      }
   }
}// end_class_App

class FrameControl extends WindowAdapter {
   public void windowClosing(WindowEvent e) {
      System.out.println("Applikation beendet!");
      System.exit(0);
   }
}
21. Frame - schliessbar ^ import java.awt.*;
import java.awt.event.*;
public class NITFApp{
   public static void main (String args[]){
      try {
         NITF_Frame nitf_f = new NITF_Frame();
         nitf_f.addWindowListener( new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
               System.exit(0);
            }
         });
      }
      catch (java.lang.Exception e) {
      }
   }
}
class NITF_Frame extends Frame{
   public NITF_Frame() {
      setSize(new Dimension(450,400));
      setVisible(true);
   }
}
22. FileReader - in String ^ public class Kern {
   String collector="";
   public Kern(){
      try {
         java.io.FileReader
         fr = new java.io.FileReader("d:\\ticker.htm");
         int c;
         while ((c=fr.read()) != -1)
            collector=collector+((char)c);
         fr.close();
      } catch (Exception e) {
         e.printStackTrace();
      }
      System.out.print(collector);
   }
}
23. Substring zwischen Tags ^ public abstract class Separator {
   private final static String END_TAG = ">";
   public static String getBlock(String text, String begin, String end) {
      int start = text.indexOf(begin);
      start = text.indexOf(END_TAG, start)+1;
      int stop = text.indexOf(end, start);
      //int stop = text.lastIndexOf(end);
      return text.substring(start, stop);
   }
}
24. Ticker - Laufschrift ^ public void tickContent(){
   long timer;
   // rechtsbündiger Text
   headlabel.setAlignment(2);
   String tickSubstring="";
   char[] nContent=content[v].toCharArray();
   for (int i=0;i!=content[v].length();i++) {
      tickSubstring=tickSubstring+nContent[i];
      headlabel.setText(tickSubstring);
      // 1/10s warten
      timer=System.currentTimeMillis();
      System.out.print("Waiting... ");
      do {}
      while (System.currentTimeMillis()-timer<100);
      }
   // Strind-Ende wegschieben
   for (int i=0;i<125;i++) {
      tickSubstring=tickSubstring+" ";
      headlabel.setText(tickSubstring);
      timer=System.currentTimeMillis();
      System.out.print("Waiting... ");
      do {}
      while (System.currentTimeMillis()-timer<100);
   }
}
25. Sachverhalt ^ Beschreibung
26. Sachverhalt ^ Beschreibung
27. Sachverhalt ^ Beschreibung
28. Sachverhalt ^ Beschreibung
29. Sachverhalt ^ Beschreibung
30. Sachverhalt ^ Beschreibung