33
1 Java für Anfänger Teil 1: Intro Programmierkurs 11.-15.10.2010 Manfred Jackel

Java für Anfänger - iis.uni-koblenz.deiis.uni-koblenz.de/WS2010-1/Javakurs2010/Material/Javakurs00.pdf · Eclipse.exe starten … File New Java Project Exklusives Verzeichnis wählen

  • Upload
    lekien

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

1

Java für AnfängerTeil 1: Intro

Programmierkurs11.-15.10.2010Manfred Jackel

1. Handwerkszeug

Eclipse Workbench mit Java-Compiler Java Runtime Environment

Notwendige Software

Java Runtime EnvironmentJRE 6 von

http://java.sun.com/javase/downloads/index.jsp ca. 14 MB Nur JRE, nicht JDK, SE oder EE (schadet nicht,

braucht sehr viel Platz) Eclipse EntwicklungsumgebungEclipse IDE for Java Developers ca. 78 MBwww.eclipse.org

In dieser Reihenfolge installieren

Download JRE

Software hat Installer

Download Eclipse

Kein Installer,In Verzeichnis

entpackenr

Eclipse.exe starten …

File New

Java Project

Eclipse.exe starten …

File New

Java Project

ExklusivesVerzeichnis

wählen

Eclipse starten …

File New

Java Project

Projektdialog ausfüllen

Frei wählbaren Projektnamen eingeben, z.B. „WelcomeProject“

Sonst die Vorgabewerte belassen

Finish drücken

Neue Klasse einfügen

Projekt markieren, in dem die Klasse erzeugt werden soll

File New

Class

Klassen-Dialog ausfüllen

Einen Klassennamenin das Feld „Name“ eingeben: Welcome

Konvention: Klassenname beginnt

mit Großbuchstabe main-Methode für

ausführbare Klassen Sonst Vorgaben

belassen

public static void main(String[] args)

Einsprung ins Programm

Kontextsensitive Hilfe

Die Klasse System Die Klasse System beinhaltet mehrere

nützliche Felder und Methoden.

Strings=Zeichenketten

“Welcome to Java“ ist ein Stringliteral

Workspace

Editor

console

2 ist Zahlliteral, zwei ist Zahlwort, “zwei“ und “2” sind Stringliterale System.out.print (22);

Ausgabe: 22 System.out.print( “zweiundzwanzig“);

Ausgabe: zweiundzwanzig System.out.print( “zwei“+“und“+“zwanzig“);

Ausgabe: zweiundzwanzig System.out.print( 2+“und“+20);

Ausgabe: 2und20 System.out.print(20+2);

Ausgabe: 22

Was Eclipse für uns gemacht hat:

Im workspace-Verzeichnis: Ein Unterverzeichnis „WelcomeProject“

Im Unterverzeichnis WelcomeProject Ein Unterverzeichnis „src“

Darin die Datei „Welcome.java“ mit Quellcode Ein Unterverzeicnis „bin“

Darin die Datei „Welcome.class“ mit Bytecode

Ohne Eclipse: Übersetzen mit Befehl: javac Welcome.java Ausführen mit Befehl: java Welcome.class

Java-Dateien werden ín Bytecode übersetzt. Die Java Virtual Machine führt diesen Bytecode dann aus.

Java-Architektur

Java-Programm(Textdatei)

JavaByecode

JavaVirtual

Machine

Betriebs-system

Java-Compiler

AusführenAusführen

.java .class

systemunabhängig

systemabhängig

Java von der Kommandozeile

javacJava-

Compiler javaBytecode-

Interpreter

nur mit JDK

2. Stoff

Java- Geschichte

Entwickelt 1995 für Sun Microsystems, Vorläufer Oak (Heimelektronik), James Gosling u.a.

Push durch Applet für NetScape Mosaic Browser JDK 1.0 1996 Java Development Kit JDK 1.1 1997 JDK 1.2 1999 ab hier Java 2 Platform JDK 1.3 2000, JDK 1.4 2003 JDK 1.5 2004: J2SE 5.0 Java 2 Standard Edition 5.0 JDK 1.6 2006

Begriff Objekt (Wikipedia)

Objekt bezeichnet: allgemein etwas Unspezifiziertes, siehe Sache oder

Gegenstand im Sinne der Dialektik das, worauf ein Subjekt seine

beobachtende, sinnliche, empirische und praktisch-verändernde Aktivität richtet, siehe Objekt (Philosophie)

ein Gegenstand mathematischer Untersuchungen Mathematisches Objekt

8.10.2009

Begriff Objekt (Wikipedia)

ein Satzglied, siehe Objekt (Grammatik) einen Himmelskörper, siehe Astronomisches Objekt eine Einheit in einem Geoinformationssystem, siehe

Geoobjekt eine Einheit in der Programmierung, siehe Objekt

(Programmierung) eine bestimmte Art künstlerischer Werke, siehe

Objektkunst einen selbstständigen Betrieb der ehem. Wismut AG

Objekt (ProgrammierungWikipedia)Ein Objekt bezeichnet … ein Exemplar eines

bestimmten Datentyps oder einer bestimmten Klasse (auch "Objekttyp" genannt). Im Kontext der objektorientierten Programmierung werden Objekte auch als „Instanzen einer Klasse“ bezeichnet. Objekte sind also konkrete Ausprägungen („Instanzen“) eines Objekttyps. Die Klasse beschreibt das Muster aller Objekte, die zu ihr gehören.

Einfaches Objekt Beispiel

Person1: Hans Dampf 01.02.1990Person2: Lieschen Müller 01.12.1991

Muster: Vorname Nachname (Geburts-)Datum

PersonVorname

NachnameGeburtstag

Person1“Hans“

“Dampf“01.02.1990

Person2“Lieschen“

“Müller“01.12.1991

Klasse

ObjektInstanz

Objekt Beispielclass Person {String vorname;String nachname;Datum gebdatum;}

PersonVorname

NachnameGeburtsdatum

Person1“Hans“

“Dampf“01.02.1990

Person2“Lieschen“

“Müller“01.12.1991

Klasse

ObjektInstanz

KlassendefinitionPerson

Klasse

Klasse

Klasse

Objekt Beispielclass Person {String vorname;String nachname;Datum gebdatum;}

Person1Hans

Dampf01.02.1990

Person2Lieschen

Müller01.12.1991

ObjektInstanz

KlassendefinitionPerson

Klasse

Klasse

Klasse

Objekt (ProgrammierungWikipedia)Jedes Objekt hat einen Zustand, ein Verhalten

und eine Identität. Der Zustand des Objekts setzt sich aus seinen

Attributen und Verbindungen zu anderen Objekten zusammen.

Das Verhalten des Objekts wird durch die Menge seiner Operationen ("Methoden") beschrieben.

Die Identität unterscheidet ein Objekt von anderen Objekten, auch wenn diese anderen Objekte den gleichen Zustand und das gleiche Verhalten haben.[

Objekt, erweitertes Beispiel

Das Verhalten des Objekts wird durch die Menge seiner Operationen ("Methoden") beschrieben.

Person1“Hans“

“Dampf“01.02.1990

Person2“Lieschen“

“Müller“01.12.1991

Alter = 18

Alter = 20

Objekt erweitertes Beispielclass Person {String: vorname;

String: nachname;Datum: gebdatum;int alter() {

}}

PersonVorname

NachnameGeburtstag

Person1“Hans“

“Dampf“01.02.1990

Person2“Lieschen“

“Müller“01.12.1991

int alter()

Programm zur Berechnung

Objekt erweitertes Beispiel

Klasse für Datum

class Datum {int jahr;int monat;int tag;

}

30

Methode: Erweitertes Beispielint alter() {

Datum heute = new Datum();heute.jahr=2010; heute.monat=10; heute.tag=11;int grob = heute.jahr - gebdatum.jahr;

if (heute.monat > gebdatum.monat)return grob - 1;

if (heute.monat == gebdatum.monat && heute.tag > gebdatum.tag)

return grob - 1;return grob;

}DemoAltersberechnung

Java Eigenschaften

Java-Verwandte: C++, C#, Objective C, Smalltalk, Delphi

hat Klassen und Objekte Vergleichsweise einfach Interpreter-gestützt (VM) Robust (z.B. keine Pointer-Arithmetik) Architekturneutral (nicht OS- oder rechnerspezifisch) Portierbar (Bytecode) Nebenläufig

Java Runtime Environment

Hardware

Betriebssystem

Java Virtual Machine

C1.class C2.class CN.class

C1.java C2.java CN.java

Java-Compiler