9
Vererbung Einfache Vererbung – Erben von abstrakten Klassen – Implementieren eines Interfaces

Vererbung

  • Upload
    hetal

  • View
    35

  • Download
    0

Embed Size (px)

DESCRIPTION

Vererbung. Einfache Vererbung – Erben von abstrakten Klassen – Implementieren eines Interfaces. Die Klassen Kreis und Quadrat. > Quelltext. > Quelltext. Die Klassen Kreis und Quadrat. Die Klasse Figur. > Quelltext. > Quelltext. > Quelltext. Test1 und Test 2. - PowerPoint PPT Presentation

Citation preview

Page 1: Vererbung

Vererbung

Einfache Vererbung – Erben von abstrakten Klassen – Implementieren eines Interfaces

Page 2: Vererbung

November 2005 GK Informatik am WHG 11-13 2

Die Klassen Kreis und Quadrat

> Quelltext >Quelltext

Page 3: Vererbung

November 2005 GK Informatik am WHG 11-13 3

Die Klassen Kreis und Quadrat

Page 4: Vererbung

November 2005 GK Informatik am WHG 11-13 4

Die Klasse Figur

>Quelltext

>Quelltext >Quelltext

Page 5: Vererbung

November 2005 GK Informatik am WHG 11-13 5

Test1 und Test 2

public class FigurenTest1 {    public static void main (String[] args) {      Quadrat einQuadrat = new Quadrat();      Kreis einKreis = new Kreis();      einQuadrat.setMittelpunkt(10,10);      einKreis.setMittelpunkt(20,20);      System.out.println("Quadrat-Mittelpunkt: ("                          + einQuadrat.getXMitte() + "/" + einQuadrat.getXMitte() + ")");      System.out.println("Kreis-Mittelpunkt: ("                          + einKreis.getXMitte() + "/" + einKreis.getXMitte() + ")");   } }

public class FigurenTest2 {    public static void main (String[] args) {      Figur eineFigur = new Quadrat();      eineFigur.setMittelpunkt(20,20);      System.out.println("Quadrat-Mittelpunkt: ("                          + eineFigur.getXMitte() + "/" + eineFigur.getXMitte() + ")");   } }

Page 6: Vererbung

November 2005 GK Informatik am WHG 11-13 6

Spätes Binden

import info1.*;  public class FigurenTest3 {    public static void main (String[] args) {     Figur eineFigur;     System.out.println("Geben Sie '1' ein,                          wenn die Figur ein Quadrat sein soll, ");     System.out.print("geben Sie '2' ein,                          wenn die Figur ein Kreis sein soll: ");     int i = Console.in.readInt();     if (i==1){       eineFigur = new Quadrat();     }     else{       eineFigur = new Kreis();     }     eineFigur.setMittelpunkt(15,15);     System.out.println((i==1?"Quadrat":"Kreis")                         + "-Mittelpunkt: (" + eineFigur.getXMitte()                         + "/" + eineFigur.getXMitte() + ")");   } }

Page 7: Vererbung

November 2005 GK Informatik am WHG 11-13 7

Erweiterung

Quadrat erbt die Methode berechneInhalt() von Rechteck. Warum reicht das?

public double berechneInhalt(){ return Math.PI * radius*radius;}

public double berechneInhalt(){ return seiteX * seiteY;}

> In Quadrat ist seiteX = seiteY

Page 8: Vererbung

November 2005 GK Informatik am WHG 11-13 8

Abstrakte Klasse

>Quelltext

Page 9: Vererbung

November 2005 GK Informatik am WHG 11-13 9

Interface

public interface A{ public abstract void a();}

public class B implements A{ public void a(){ //.... }}

public class InterfaceTest1 {

public static void main (String[] args) { B b = new B(); b.a(); }}

public class InterfaceTest2 {

public static void main (String[] args) { A a = new A() { public void a(){ //... } }; a(); }}