Pawlow Konstantin AM-511 Automatik und Rechentechnik 2006 NSTU

Preview:

Citation preview

Pawlow Konstantin

AM-511 Automatik und Rechentechnik

2006

NSTU

JAVA Write once, run anywhere

(deutsch: „Einmal schreiben, überall ausführen“) java.sun.com sun.com javagu.ru www.borland.com/de

Java-Technologie

Die Java-Technologie wurde von Sun Microsystemsentwickelt.Die Java-Technologie besteht aus den folgendenKomponenten:

– Programmiersprache Java – Java-Plattform

Auf diesen Komponenten aufbauend gibt es folgendeTechnologien:

– Java 2 Platform Standard Edition – Java 2 Platform Enterprise Edition – Java 2 Platform Micro Edition – Java Card

Inhaltsverzeichnis

Grundkonzepte der SpracheObjektorientierungReflectionWrite Once, Run AnywhereModulare Ausführung auf fernen Computern

Merkmale der Sprache Entstehung und Weiterentwicklung der Sprache

EntstehungSun und JCP (Java Community Process)

Entwicklungsumgebungen

Grundkonzepte der Sprache

Objektorientierte Programmiersprache Gleiche Programme auf unterschiedlichen

Computersystemen Eingebaute Unterstützung für die Verwendung

von Computernetzen Code aus entfernten Quellen sicher ausführen

können

Das Sicherheitskonzept von Java

drei Schichten besteht: 1. dem Code-Verifier, der sicherstellt, dass die VM

keinen ungültigen Bytecode ausführen kann

2. den Class-Loadern, die die sichere Zuführung von Klasseninformationen zur JVM steuern

3. den Security-Managern die sicherstellen, dass nur Zugriff auf Programmobjekte erlaubt wird, für die entsprechende Rechte vorhanden sind

Grundkonzepte der Sprache

Die erfolgreichen Aspekte bereits verbreiteter objektorientierter Programmiersprachen sollen Java-Programmierer zur Verfügung stehen

Objektorientierung

Die Sprache Java gehört zu den objektorientierten Programmiersprachen

Java ist nicht vollständig objektorientiert: Die Grunddatentypen (int, boolean usw.) und Literale sind keine Objekte

Reflection

Java bietet eine Reflection-API als Bestandteil der Laufzeitumgebung

Write Once, Run Anywhere

Java funktioniert nach dem Konzept Write Once, Run Anywhere

Das bedeutet, dass man ein Programm, das in Java programmiert wurde, theoretisch nur einmal zu kompilieren braucht und es auf allen anderen Systemen läuft, die eine Java-Laufzeitumgebung (Java Runtime Environment bzw. JRE) besitzen

Write Once, Run Anywhere

Der Bytecode funktioniert also als Zwischencode, zwischen Programmiersprache und Maschinensprache.

So ist das Javaprogramm nicht an eine bestimmte Maschine gebunden.

Write Once, Run Anywhere

Das Java Runtime Environment existiert für weit verbreitete Betriebssysteme wie Microsoft Windows, Linux, Solaris, Mac OS X, AIX und viele andere

Write Once, Run Anywhere

Daneben gibt es eine JRE nicht nur für Server- und Desktop-Betriebssysteme, sondern auch für viele Embedded Systeme wie Mobiltelefone, PDAs, sowie Smartcards und andere technische Plattformen, wie Auto und TV.

Write Once, Run Anywhere

Es gibt aber auch Compiler, die Java direkt in Maschinencode übersetzen (Native Compiler)

Modulare Ausführung auf fernen Computern

Java bietet die Möglichkeit, Klassen zu schreiben, die in unterschiedlichen Ausführungsumgebungen ablaufen.

Beispielsweise lassen sich Applets in Webbrowsern, die Java unterstützen, ausführen.

Beispiele für Java-Ausführungsumgebungen sind Applets, Servlets, Portlets, Midlets, Xlets, Translets, und Enterprise Java Beans.

Merkmale der Sprache

Der Objektzugriff in Java ist über Referenzengenannte Zeiger implementiert.

So genannte Zeigerarithmetik ist mit der Sprache also ausgeschlossen. Per Design können so Fehler, welche häufig in anderen Programmiersprachen auftreten, von vornherein ausgeschlossen werden.

Merkmale der Sprache

Zusammengehörige Klassen werden in Paketen (englisch packages) zusammengefasst. Diese Pakete ermöglichen die Einschränkung der Sichtbarkeit von Klassen, eine Strukturierung von größeren Projekten sowie eine Trennung des Namensraums für verschiedene Entwickler.

Merkmale der Sprache

Unterstützt die Sprache Threads (nebenläufig ablaufende Programmteile) und Ausnahmen (englisch exception) und Java beinhaltet auch eine automatische Speicherbereinigung (englisch garbage collector), die nicht (mehr) referenzierte Objekte aus dem Speicher entfernt.

Merkmale der Sprache

Zu Java gehört eine umfangreiche Klassenbibliothek.

Mit Java 1.2 wurden die Java Foundation Classes (JFC) eingeführt, die unter anderem Swing bereitstellen, das zur Erzeugung plattformunabhängiger grafischer Benutzerschnittstellen (GUI) dient und auf AWT basiert.

Entstehung und Weiterentwicklung der Sprache

Entstehung Geschichte Javas

Sun и JCP (JCP – Java Community Process)

Geschichte Javas

Die Urversion von Java - auch Oak genannt - wurde in einem Zeitraum von 18 Monaten vom Frühjahr 1991 bis Sommer 1992 unter dem Projektnamen The Green Project

Geschichte Javas

The Green Project von Patrick Naughton, Mike Sheridan, James Gosling und Bill Joy sowie neun weiteren Entwicklern im Auftrag des US-amerikanischen Computerherstellers Sun Microsystems entwickelt.

Bill JoyJames Gosling

Patrick Naughton

Geschichte Javas

Die Entwicklung fand in einem unauffälligen Bürogebäude in der Sand Hill Road in Menlo Park statt.

Geschichte Javas

Im Sommer 1992 schließlich war die erste Oak-basierte Anwendung fertig gestellt – “an interactive, handheld home-entertainment device controller with an animated touchscreen user interface”. Diese Technologiedemonstration einer Touchscreen-basierten Gerätesteuerung mit animierter Benutzeroberfläche (GUI) hatte den Namen *7 (StarSeven).

Geschichte Javas

Hinterzimmer-Projekt „The Green Project“ entstand die Firma „FirstPerson“. Aus dem Büro wurde ein Bürohaus in der 100 Hamilton Avenue in Palo Alto.

Sun и JCP

Der JCP wurde 1998 von Sun Microsystemsins Leben gerufen

Die grossen Unternehmen vervollkommnendJava.

Entwicklungsumgebungen

Die bekanntesten Open-Source-Umgebungen sind Eclipse und NetBeans

Eclipse

NetBeans

NetBeans

Eigenschaftenfenster

Das Basisfenster

Der Manager des Projektes

Arbeitsraum

Eclipse Platform

Das Basisfenster

Arbeitsraum

Der Forscher des Paketes

X-CODE aus Mac OS X

Groups & Files

Der Editor

Unter den kommerziellen Entwicklungsumgebungen

Netbeans basierende Sun ONE Studio von Sun

IntelliJ IDEA von JetBrains JBuilder von Borland

Links & Web

http://www.sun.de/http://java.sun.com/http://de.wikipedia.org/http://www.apple.com/de/macosx/http://javagu.ru/http://www.borland.com/dehttp://www.falkhausen.de/download/diagram/img/http://www-128.ibm.com/developerworks/java/library/

Anhang.Bytecode

Anhang.JFC

Pawlow Konstantin

AM-511 Automatik und Rechentechnik

2006

NSTU

Recommended