Grundbegriffe der Objektorientierung

Aufgabe 1

  • Erstelle eine Klasse HelloWorld mit einer Methode textausgabe( ), die den Text „Hallo Welt“ ausgibt!
  • Instanziere ein Objekt der Klasse und rufe für dieses Objekt die Methode textausgabe( ) auf.

Lösung:

public class HelloWorld
{
    public void textausgabe(){
        System.out.println("Hallo Welt!");
    }
}

Aufgabe 2

  • Füge der Klasse HelloWorld eine Methode rechtecksflächeAusgeben() hinzu, die die Fläche eines Rechtecks mit der Länge 10 cm und der Breite 8 cm ausgibt.
public class HelloWorld
{   
    public void rechtecksflächeAusgeben(){
        System.out.println("Fläche:");
        System.out.println(10 * 8);
    }
}
  • Füge der Methode die Parameter länge und breite vom Datentyp double hinzu. Ändere sie so ab, dass der Flächeninhalt mit Hilfe dieser beiden Parameter berechnet wird.
  • Erweitere die Methode so dass sie auch den Umfang ausgibt!
public class HelloWorld
{
    public void textausgabe(){
        System.out.println("Hallo Welt!");
    }
 
    public void rechtecksflächeAusgeben(double länge, double breite){
        System.out.println("Fläche:");
        System.out.println(länge * breite);
        System.out.println("Umfang:");
        System.out.println(2*(länge + breite));
    }
}

Aufgabe 3

Schreibe
a) eine Methode kreisUmfangAusgeben(double radius)
b) eine Methode quaderOberflächeAusgeben(double länge, double breite, double höhe)
c) eine Methode zufallszahlAusgeben(double von, double bis)
Tipp: Die Methode Math.random() liefert eine Zufallszahl im Intervall [0; 1[

public void kreisUmfangAusgeben(double radius){
        System.out.println("Kreisumfang: ");
        System.out.println(2 * 3.14159 * radius);
    }
 
    public void quaderoberflächeAusgeben(double länge, double breite,
                                          double höhe){
        System.out.println("Quaderoberfläche: ");
        System.out.println(2*länge*breite + 2*länge*höhe + 2*breite*höhe);
    }
 
    public void zufallszahlAusgeben(double von, double bis){
        System.out.println("Zufallszahl: ");
        System.out.println(von + Math.random()*(bis - von));
    }

Übung

  1. Schreibe eine Methode zylindervolumenAusgeben, die das Volumen eines Zylinders zurückliefert!
  2. Schreibe eine Methode zufall, die zwei ganze Zahlen von und bis als Parameter entgegennimmt und eine ganze Zufallszahl aus der Menge {von, …, bis} zurückliefert.

Tipp 1:

Die Methode Math.random() liefert eine Zufallszahl aus dem Intervall [0;1[ zurück.

Tipp 2:

Die Methode (int)Math.floor(a) liefert den ganzzahligen Anteil der Zahl a zurück.

Lösung:

	public void zylindervolumenAusgeben(double radius, double höhe){
		return Math.PI * radius * radius * höhe;
	}
 
	public int zufall(int von, int bis){
		return von + (int)Math.floor( Math.random()*(bis - von + 1));
	}

Aufgabe 4

Die Klasse Auto:

public class Auto {
 
	private String modell;
	private double leistungKW;
 
	public void setzeName(String m){
		modell = m;
	}
 
	public void setzeLeistungKW(double kw){
		leistungKW = kw;
	}
 
	public void schreibeDaten(){
		System.out.println("Modell: " + modell);
		System.out.println("Leistung: " + leistungKW + " kW");
	}
 
 
	public static void main(String[] args) {
		new Auto().test();
	}
 
 
}

Nutzung der Klasse (beispielhaft):

Auto a1 = new Auto();
a1.setzeName("Audi A4");
a1.setzeLeistungKW(90);
a1.schreibeDaten();
 
Auto a2 = new Auto();
a2.setzeName("VW Käfer");
a2.setzeLeistungKW(45);
a2.schreibeDaten();

Ausgabe:

Modell: Audi A4
Leistung: 90.0 kW
Modell: VW Käfer
Leistung: 45.0 kW

Aufgabe:

  1. Erweitere die Klasse um ein Attribut farbe vom Datentyp String!
  2. Schreibe eine Klasse Tier mit den Attributen art, name, anzahlBeine und hatFell!


Lösung

public class Tier {
 
	private String art;
	private String name;
	private int anzahlBeine;
	private boolean hatFell;
 
	public void setzeArt(String a) {
		this.art = a;
	}
	public void setzeName(String n) {
		this.name = n;
	}
	public void setzeAnzahlBeine(int ab) {
		this.anzahlBeine = ab;
	}
	public void setzeHatFell(boolean hf) {
		this.hatFell = hf;
	}
 
	public void schreibeDaten(){
		System.out.println("Ich heiße " + name + " und bin ein " + art + ".");
		System.out.print("Ich habe " + anzahlBeine + " Beine und ");
 
		if(hatFell){
			System.out.println("ein Fell.");
		} else {
			System.out.println("kein Fell");
		}
	}
 
}
Drucken/exportieren
QR-Code
QR-Code schule:klassen:2018:10bc:kap1 (erstellt für aktuelle Seite)