Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Java ist auch eine Sprache
2 Sprachbeschreibung
3 Klassen und Objekte
4 Der Umgang mit Zeichenketten
5 Mathematisches
6 Eigene Klassen schreiben
7 Angewandte Objektorientierung
8 Exceptions
9 Generics, innere Klassen
10 Die Klassenbibliothek
11 Threads und nebenläufige Programmierung
12 Datenstrukturen und Algorithmen
13 Raum und Zeit
14 Dateien und Datenströme
15 Die eXtensible Markup Language (XML)
16 Grafische Oberflächen mit Swing
17 Grafikprogrammierung
18 Netzwerkprogrammierung
19 Verteilte Programmierung mit RMI und Web–Services
20 JavaServer Pages und Servlets
21 Applets
22 Midlets und die Java ME
23 Datenbankmanagement mit JDBC
24 Reflection und Annotationen
25 Logging und Monitoring
26 Sicherheitskonzepte
27 Java Native Interface (JNI)
28 Dienstprogramme für die Java-Umgebung
Stichwort
Download: - ZIP, ca. 14,1 MB
Buch bestellen
Ihre Meinung?
<< zurück | Galileo Computing / <openbook> / Java-Insel | vor >>
Java ist auch eine Insel (8. Auflage) von Christian Ullenboom Programmieren mit der Java Standard Edition Version 6
Java ist auch eine Insel (8. Aufl.) 8., aktual. Auflage, geb., mit DVD 1.475 S., 49,90 Euro Galileo Computing ISBN 978-3-8362-1371-4 |
| 3 Klassen und Objekte
|  | 3.1 Objektorientierte Programmierung
|  |  | 3.1.1 Warum überhaupt OOP?
|  |  | 3.1.2 Denk ich an Java, denk ich an Wiederverwendbarkeit
|  | 3.2 Eigenschaften einer Klasse
|  |  | 3.2.1 Die Klasse Point
|  | 3.3 Die UML (Unified Modeling Language)
|  |  | 3.3.1 Hintergrund und Geschichte zur UML
|  |  | 3.3.2 Wichtige Diagrammtypen der UML
|  |  | 3.3.3 UML-Werkzeuge
|  | 3.4 Neue Objekte erzeugen
|  |  | 3.4.1 Anlegen eines Exemplars einer Klasse mit dem new-Operator
|  |  | 3.4.2 Deklarieren von Referenzvariablen
|  |  | 3.4.3 Zugriff auf Variablen und Methoden mit dem ».«
|  |  | 3.4.4 Konstruktoren nutzen
|  | 3.5 Pakete und import-Deklarationen nutzen
|  |  | 3.5.1 Volle Qualifizierung und import-Deklaration
|  |  | 3.5.2 import *
|  | 3.6 Mit Referenzen arbeiten
|  |  | 3.6.1 Zuweisungen bei Referenzen
|  |  | 3.6.2 Methoden mit nicht-primitiven Parametern
|  | 3.7 Identität und Gleichheit
|  |  | 3.7.1 Identität von Objekten
|  |  | 3.7.2 Gleichheit und die Methode equals()
|  |  | 3.7.3 Die null-Referenz
|  | 3.8 Wrapper-Klassen und Autoboxing
|  |  | 3.8.1 Erzeugen von Wrapper-Objekten
|  |  | 3.8.2 Konvertierungen in eine String-Repräsentation
|  |  | 3.8.3 Die Klasse Integer
|  |  | 3.8.4 Die Klassen Double und Float für Fließkommazahlen
|  |  | 3.8.5 Die Basisklasse Number für numerische Wrapper-Objekte
|  |  | 3.8.6 Die Boolean-Klasse
|  |  | 3.8.7 Autoboxing: Boxing und Unboxing
|  | 3.9 Compilationseinheiten und eigene Pakete schnüren
|  |  | 3.9.1 Die package-Anweisung
|  |  | 3.9.2 Importieren von Klassen mit import
|  |  | 3.9.3 Hierarchische Strukturen und das Default-Package
|  |  | 3.9.4 Paketnamen
|  |  | 3.9.5 Klassen mit gleichen Namen in unterschiedlichen Paketen
|  |  | 3.9.6 Compilationseinheit (Compilation Unit)
|  |  | 3.9.7 Statischer Import
|  |  | 3.9.8 Eine Verzeichnisstruktur für eigene Projekte
|  | 3.10 Arrays
|  |  | 3.10.1 Deklaration von Arrays
|  |  | 3.10.2 Arrays mit Inhalt
|  |  | 3.10.3 Die Länge eines Arrays über das Attribut length
|  |  | 3.10.4 Zugriff auf die Elemente über den Index
|  |  | 3.10.5 Array-Objekte mit new erzeugen
|  |  | 3.10.6 Fehler bei Arrays
|  |  | 3.10.7 Die erweiterte for-Schleife
|  |  | 3.10.8 Arrays mit nicht-primitiven Elementen
|  |  | 3.10.9 Mehrdimensionale Arrays
|  |  | 3.10.10 Vorinitialisierte Arrays
|  |  | 3.10.11 Mehrere Rückgabewerte
|  |  | 3.10.12 Methode mit variabler Argumentanzahl (Vararg)
|  |  | 3.10.13 Klonen kann sich lohnen – Arrays vermehren
|  |  | 3.10.14 Feldinhalte kopieren
|  |  | 3.10.15 Die Klasse Arrays zum Vergleichen, Füllen und Suchen
|  | 3.11 Der Einstiegspunkt für das Laufzeitsystem: main()
|  |  | 3.11.1 Kommandozeilen-Argumente verarbeiten
|  |  | 3.11.2 Der Rückgabewert von main() und System.exit()
|  | 3.12 Zum Weiterlesen
## 3.11 Der Einstiegspunkt für das Laufzeitsystem: main() In Java-Klassen gibt es – ähnlich wie in C(++) – eine besondere Funktion main(), die das Laufzeitsystem in der angegebenen Hauptklasse (oder Startklasse) des Programms aufruft. Die main()-Funktion ist für alle Klassen und in der JVM zugänglich (public) und auf jeden Fall statisch (static) zu deklarieren. Die Funktion muss statisch sein, da die JVM die Funktion auch ohne Exemplar der Klasse aufrufen möchte. Als Parameter wird ein Array von String-Objekten angenommen. Darin sind die auf der Kommandozeile übergebenen Parameter gespeichert:
    public static void main( String[] args )
Ab Java 5 ist durch die variablen Argumentlisten alternativ gültig:
    public static void main( String... args )
Stimmt der Kopf der Methode nicht, wird diese Funktion nicht als Einstiegspunkt von der virtuellen Maschine erkannt.
Hinweis Im Gegensatz zu C(++) steht im ersten Element des Argument-Arrays mit Index 0 nicht der Programmname, also der Name der Hauptklasse, sondern bereits der erste Programmparameter der Kommandozeile.
### 3.11.1 Kommandozeilen-Argumente verarbeiten Eine besondere Variable für die Anzahl der übergebenen Argumente der Kommandozeile ist nicht erforderlich, weil das String-Array-Objekt uns diese Information über length mitteilt. Um etwa alle übergebenen Argumente über die erweiterte for-Schleife auszugeben, schreiben wir: Listing 3.21 LovesGoldenHamster.java, main()
    public static void main( String[] args )
    {
      if ( args.length == 0 )
        System.out.println( "Was!! Keiner liebt kleine Hamster?" );
      else
      {
        System.out.print( "Liebt kleine Hamster: " );

        for ( String s : args )
          System.out.format( "%s ", s );

        System.out.println();
      }
    }
Das Programm lässt sich auf der Kommandozeile wie folgt aufrufen: $ java LovesGoldenHamster Raphael Perly Mirjam Paul
Bibliothek Zum Parsen der Kommandozeilenargumente bietet sich zum Beispiel die Bibliothek Jakarta Commons CLI (http://jakarta.apache.org/commons/cli/) an.
### 3.11.2 Der Rückgabewert von main() und System.exit() Der Rückgabetyp void der Startfunktion main() ist sicherlich diskussionswürdig, da diejenigen, die die Sprache entworfen haben, auch hätten fordern können, dass ein Programm immer einen Statuscode an das aufrufende Programm zurückgibt. Für diese Lösung haben sie sich aber nicht entschieden, da Java-Programme in der Regel nur minimal mit dem umgebenden Betriebssystem interagieren sollen und echte Plattformunabhängigkeit gefordert ist, etwa bei Java in Handys. Für die Fälle, in denen ein Statuscode zurückgeliefert werden soll, steht die Funktion System.exit(status) zur Verfügung; sie beendet eine Applikation. Das an exit() übergebene Argument nennt sich Statuswert (engl. exit status) und wird an die Kommandozeile zurückgegeben. Der Wert ist für Skriptprogramme wichtig, da sie über diesen Rückgabewert auf das Gelingen oder Misslingen des Java-Programms reagieren können. Ein Wert von 0 zeigt per Definition das Gelingen an, ein Wert ungleich 0 einen Fehler. Der Wertebereich sollte sich zwischen 0 und 255 bewegen. Unter der Unix-Kommandozeile ist der Rückgabewert eines Programms unter $? verfügbar.
    final class java.lang.System
static void exit( int status ) Ein Aufruf von exit() beendet die aktuelle JVM und gibt das Argument der Funktion als Statuswert zurück. Ein Wert ungleich null zeigt einen Fehler an. Also ist der Rückgabewert beim normalen fehlerfreien Verlassen null. Eine SecurityException wird ausgelöst, falls der aktuelle SecurityManager dem aufrufenden Code nicht erlaubt, die JVM zu beenden. Das gilt insbesondere bei Applets in einem Webbrowser. ### Ihr Kommentar Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück | <top> | vor >>
Zum Katalog
Java ist auch eine Insel Jetzt bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Tipp
| Coding for Fun
Buchempfehlungen
| Objektorientierte Programmierung
| Einstieg in Eclipse 3.4
| Java 6 lernen mit Eclipse
| NetBeans Platform 6
| Java und XML
| Visual C# 2008
| IT-Handbuch für Fachinformatiker
| C++ von A bis Z
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2009
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Computing]
Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de