Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

schule:klassen:2019:10abc:kap1 [2019/10/10 10:48]
martin angelegt
schule:klassen:2019:10abc:kap1 [2019/10/10 14:26] (aktuell)
martin [Nutzung der Klasse (beispielhaft):]
Zeile 1: Zeile 1:
 +====== 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:​**
 +<code java>
 +public class HelloWorld
 +{
 +    public void textausgabe(){
 +        System.out.println("​Hallo Welt!"​);​
 +    }
 +}
 +</​code>​
 +
 +===== 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.
 +  ​
 +<code java>
 +public class HelloWorld
 +{   
 +    public void rechtecksflächeAusgeben(){
 +        System.out.println("​Fläche:"​);​
 +        System.out.println(10 * 8);
 +    }
 +}
 +</​code>​
 +  * 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!
 +<code java>
 +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));
 +    }
 +}
 +</​code>​
 +
 +===== 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[
 +
 +<code java>
 +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));
 +    }
 +</​code>​
 +
 +===== Übung =====
 + 
 +  - Schreibe eine Methode zylindervolumenAusgeben,​ die das Volumen eines Zylinders zurückliefert!
 +  - 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: ===
 +<code java>
 + 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));
 + }
 +</​code>​
 +
 +
 +===== Aufgabe 4 =====
 +==== Die Klasse Auto: ====
 +<code java>
 +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();​
 + }
 +
 +
 +}
 +</​code>​
 +==== Nutzung der Klasse (beispielhaft):​ ====
 +<code java>
 +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();​
 +</​code>​
 +**Ausgabe:​**
 +<​code>​
 +Modell: Audi A4
 +Leistung: 90.0 kW
 +Modell: VW Käfer
 +Leistung: 45.0 kW
 +</​code>​
 +
 +**Aufgabe:​**
 +  - Erweitere die Klasse um ein Attribut farbe vom Datentyp String!
 +  - Schreibe eine Klasse Tier mit den Attributen art, name, anzahlBeine und hatFell!
 + ​\\ ​
 +** Lösung **
 +<code java>
 +public class Tier {
 +
 + private String art;
 + private String name;
 + private int anzahlBeine;​
 + private boolean hatFell;
 +
 + public void setzeArt(String a) {
 + art = a;
 + }
 + public void setzeName(String n) {
 + name = n;
 + }
 + public void setzeAnzahlBeine(int ab) {
 + anzahlBeine = ab;
 + }
 + public void setzeHatFell(boolean hf) {
 + 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"​);​
 + }
 + }
 +
 +}
 +</​code>​
  
Drucken/exportieren
QR-Code
QR-Code schule:klassen:2019:10abc:kap1 (erstellt für aktuelle Seite)