Vererbung (Struktursicht, Finalisieren von Klassen

Werbung
Begriffliches zu Methoden
Vererbung (Struktursicht, Finalisieren von Klassen)
public class GraphicalElement {
Color fill, outline;
public void draw (Graphics g) {
System.out.println("cannot draw");
}
}
Signatur
Resultattyp
Methodenname
Formale Parameter
public class Rectangle extends GraphicalElement {
float x,y;
int width, height;
public boolean isQuadrat () {
return width == height;
}
}
public void draw (Graphics g, Dummy z) {
g.drawRect((int)x, (int)y, width, height);
}
Methodenrumpf
Parameterliste + Methodenrumpf = erweiterter Methodenrumpf
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
102
Vererbung (Struktursicht, Finalisieren von Klassen)
103
Vererbung (Struktursicht, Finalisieren von Klassen)
public class Rectangle {
Color fill, outline;
float x,y;
int width, height;
public boolean isQuadrat () {
return width == height;
}
public void draw (Graphics g) {
System.out.println("cannot draw");
}
}
public class GraphicalElement {
Color fill, outline;
public void draw (Graphics g) {
System.out.println("cannot draw");
}
}
public class Rectangle {
Color fill, outline;
float x,y;
int width, height;
public boolean isQuadrat () {
return width == height;
}
public void draw (Graphics g) {
System.out.println("cannot draw");
}
public class GraphicRectangle
extends Rectangle {
public void draw (Graphics g) {
g.drawRect((int)x, (int)y,
width, height);
}
}
}
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
104
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
105
Vererbung (Struktursicht, Finalisieren von Klassen)
Vererbung (Struktursicht, Finalisieren von Klassen)
public class Rectangle {
Color fill, outline;
float x,y;
int width, height;
public boolean isQuadrat () {
return width == height;
}
public void draw (Graphics g) {
System.out.println("cannot draw");
}
}
Welche Komponenten hat eine Klasse ?
Attribute (Instanzvariablen)
– alle Attribute der Superklasse (und damit
aller Superklassen)
– alle eigenen (lokalen) Attribute
public class GraphicRectangle {
Color fill, outline;
float x,y;
int width, height;
public boolean isQuadrat () {
return width == height;
}
public void draw (Graphics g) {
g.drawRect((int)x, (int)y, width, height);
}
Methoden
– alle Methoden der Superklasse, die nicht
durch eine gleiche lokale Methode (Name
und Signatur) überschrieben werden
– alle lokalen Methoden
}
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
106
Vererbung (Struktursicht, Finalisieren von Klassen)
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
108
Wolfgang Goerigk: Objektorientierte Programmierung in Java (SS 2009)
107
Herunterladen