Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer)



Ähnliche Dokumente
Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

II.1.1. Erste Schritte - 1 -

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Liste Programmieren Java Überblick

Applications Applets (eingeschränkte Rechte)

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 18

Java Einführung Packages

Ein erstes Java-Programm

Gliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi

Javakurs zu Informatik I. Henning Heitkötter

Java Einführung Programmcode

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Zahlensysteme und Datendarstellung

Objektorientierte Programmierung. Kapitel 12: Interfaces

Zahlensysteme Das 10er-System

C# im Vergleich zu Java

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

Computeranwendung und Programmierung (CuP)

JDBC. Allgemeines ODBC. java.sql. Beispiele

Java Einführung Collections

Grundlagen von Python

Zahlensysteme Seite -1- Zahlensysteme

Programmieren Tutorium

Informationssysteme Gleitkommazahlen nach dem IEEE-Standard 754. Berechnung von Gleitkommazahlen aus Dezimalzahlen. HSLU T&A Informatik HS10

Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API).

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird.

2. Negative Dualzahlen darstellen

1. Stellenwerte im Dualsystem

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Grundlagen der Informatik

Java Kurs für Anfänger Einheit 5 Methoden

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.

Programmierkurs Java

CORBA. Systemprogrammierung WS

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

Vorkurs Informatik WiSe 15/16

2. Programmierung in C

Tutorium Informatik 1. Aufgabe 2: Formatierte Ein- und Ausgabe

Objektorientierte Programmierung

Java Virtual Machine (JVM) Bytecode

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala

Programmierung mit NQC: Kommunikation zwischen zwei RCX

Programmieren in Java

Übung 9 - Lösungsvorschlag

Innere Klassen in Java

Einführung in die Java- Programmierung

Einführung in die Programmierung

Kapitel 2. Zahlensysteme, Darstellung von Informationen

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.

Einführung in die C++ Programmierung für Ingenieure

Tutorium Rechnerorganisation

4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen

Einführung in Javadoc

Vorkurs C++ Programmierung

Oracle: Abstrakte Datentypen:

Numerische Datentypen. Simon Weidmann

Einführung in die Programmierung

Prof. Dr. Uwe Schmidt. 21. August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

1 Vom Problem zum Programm

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Szenario 3: Service mit erweiterter Schnittstelle

Präsentation Von Laura Baake und Janina Schwemer

5 DATEN Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Repräsentation von Daten Binärcodierung von rationalen Zahlen und Zeichen

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Remote Method Invocation

Einführung in die C-Programmierung

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Programmierkurs Java

Typumwandlungen bei Referenztypen

Anleitung zur Bearbeitung von Prüferkommentaren in der Nachreichung

Algorithmen und Datenstrukturen

Testen mit JUnit. Motivation

Programmieren was ist das genau?

Folge 19 - Bäume Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Vorlesung Informatik II

Abschnitt 12: Strukturierung von Java-Programmen: Packages

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.

Pragmatik von Programmiersprachen

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen

13. Tutorium zu Programmieren

Tutorium 5 - Programmieren

(H ist Entropie) bei Redundanz Information vielleicht mehrfach. Redundanz zur Fehlererkennung und -korrektur nutzbar

Objektorientierte Programmierung OOP

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Zahlensysteme. Zahl Stellenwert Zahl Zahl =

BEISPIELKLAUSUR Softwareentwicklung:

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

Modellierung und Programmierung 1

Klassenbeziehungen & Vererbung

Transkript:

Programmieren I Grundlagen von JAVA Dr. Klaus Höppner Hello World in JAVA Hochschule Darmstadt WS 2007/2008 Elementare Datentypen 1 / 17 2 / 17 Eigenschaften von JAVA Prinzipieller Ablauf Plattform-und Betriebssystem-unabhängig Einfach zu nutzende Programmiersprache Objekt-orientiert Source-Code Javac Bytecode interpretierbar, aber dennoch schnell eigenes Speichermanagement Multi-Threaded Das ist C++ außer dem Hard Stuff : kein programmiertes Speichermanagement keine expliziten Pointer kein Operatorenüberladen keine Strukturen oder Unions keine Mehrfachvererbung Verification Java Virtual Machine (Java, Browser, Appletviewer) The Key To Transparent, Universal Connectivity And Information Exchange 3 / 17 4 / 17

Geschichtliches Anfang der 1990er Jahre: Programmiersprache Oak aus rechtlichen Gründen in JAVA umbenannt (Café Java City, das die Entwickler in den Pausen besuchten) Auftraggeber Sun, anfänglich aber ansonsten wenig beteiligt 1995/6: Version 1, bereit mit wesentlichen Standardbibliotheken: java.lang elementare Klassen, z. B. Object und System java.io Ein- und Ausgabe java.util z. B. Datenstrukturen und eine Datumsklasse java.net einfache TCP/IP-Klassen java.awt grundlegende Klassen für grafische Benutzeroberflächen java.applet eine Klasse für Applets 1997: Version 1.1 Geschichtliches (Forts.) Internationalisierung Java-Komponenten: Java Beans Dateiformat JAR für die Paketierung ganzer Bibliotheken oder Anwendungen Verteilte Programme: Remote Method Invocation (RMI) JDBC: Zugriff auf relationale Datenbanken Sicherheitsfunktionen 1998: Version 1.2 ( Java 2 ) Verbesserung der Performance neue Schnittstellen und Implementierungen für Collections die Oberflächen-Bibliothek Swing eine CORBA-Schnittstelle 5 / 17 6 / 17 Geschichtliches (Forts.) Erstes JAVA-Programm 2000: Version 1.3 Bugfixes 2002: Version 1.4 Serverprogrammierung (z. B. Servlets) 2004: Version 5.0 (=1.5) Generische Typen (Generics) Vereinfachte Syntax für die Iteration über Collections, Maps und Arrays Aufzählungswerte ( Enumerations ) 2006: Version 6.0 (=1.6) Web 2.0 // Erstes Programm System.out.println("Hallo Welt"); 7 / 17 8 / 17

Analyse des Beispiels Analyse des Beispiels (Fortsetzung) Die Zeile // Erstes Programm ist ein Kommentar JAVA kennt zwei Arten von Kommentaren: 1. Einzeilige Kommentare: Eingeleitet mit // Der Kommentar gilt jeweils vom // bis zum Ende der Zeile. 2. Kommentar-Bereich: Alles zwischen /* und */ gilt als Kommentar. Dieser Bereich kann auch über mehrere Zeilen gehen. Jedes JAVA-Programm besteht aus mindestens einer Klasse:... Das Hauptprogramm befindet sich in einer statischen Methode (public static void main(...)) Blöcke von Anweisungen werden in geschweiften Klammern ({...) eingeschlossen. Anweisungen werden mit einem Semikolon abgeschlossen. Die Formatierung des Quelltextes ist unwichtig. 9 / 17 10 / 17 Variablen Variation des Beispiels In JAVA können Variablen definiert werden. Diese sind entweder Objekte oder von einem elementaren Datentyp. Variablen können sein: lokale Variablen innerhalb einer Methode Member-Variablen (normale Attribute) Klassen-Variablen (statische Attribute) BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Ihr Name: "); try { name = in.readline(); System.out.println("Hallo "+name); catch (IOException e) { static String name; 11 / 17 12 / 17

Übersicht elementarer Datentypen Typ Bytes Wertebereich byte 1 128... 127 short 2 32768... 32767 int 4 2147483648... 2147483647 long 8 ±9,2 10 18 float 4 Gleitkommazahl (einfache Genauigkeit) double 8 Gleitkommazahl (doppelte Genauigkeit) Kleiner Exkurs: Zahlensysteme Das bei Menschen übliche Zahlensystem ist das Dezimalsystem (Basis 10). Es gilt also: 127 10 = 1 10 2 + 2 10 1 + 7 10 0 Im EDV-Bereich sind noch das Binär- und Hexadezimalsystem von Bedeutung. Das Hexadezimalsystem kennt die Ziffern 0-15, nämlich 0... 9, A... F. 1010 2 = 1 2 3 + 0 2 2 + 1 2 1 + 0 2 0 = 10 10 A7 16 = 10 16 1 + 7 16 0 = 167 10 Computer speichern Daten im Binärsystem. Kleinste Einheit ist das Bit (binary digit): 0 oder 1. Eine Kette von 8 Bit heißt Byte. Diese kann 2 8 = 256 verschiedene Werte annehmen: 0 255. Jedes Byte lässt sich durch zwei Hexadezimal-Ziffern darstellen: Gebräuchliche Einheiten: 1011 {{ 0101 {{ 2 = B5 16 = 181 10 B 5 1 KB = 1024 B (= 2 10 B) 1 MB = 1024 KB (= 1048576 B) 1 GB = 1024 MB (= 1073741824 B) 13 / 17 Negative Zahlen Ein Byte kann 256 verschiedene Werte, nämlich 00000000 2 bis 11111111 2 annehmen. Dies kann man als Werte 0 bis 255 interpretieren. Wie stellt man negative Zahlen dar? Per Definition kann man das höchstwertige Bit eines Datentyps als Vorzeichen-Bit interpretieren. Bei einem Datentyp, der aus einem Byte besteht, gelten in diesem Fall die Werte als positiv. Die Werte 00000000 2... 01111111 2 = 0 10... 127 10 10000000 2 (= 128 10 )... 11111111 2 (= 1 10 ) 14 / 17 gelten als negativ. 15 / 17 16 / 17

import java.io.*; Beispiel BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Ihr Alter: "); try { alter = Integer.parseInt(in.readLine()); System.out.println("Jahre bis zur Rente: " +String.valueOf(rentenalter-alter)); catch (IOException e) { static int alter; final static int rentenalter=67; 17 / 17