Hinweis: Fügen Sie bei Bedarf die Hauptmethode hinzu.
Jedes hier vorgestellte Szenario dient dazu, ein gutes Verständnis für OOP (Object Oriented Programming) durch Java zu erlangen.
Szenario Nr. 1:
Erwartetes Verständnis: Zugriffsmodifikatoren, Einzelvererbung, Getter-Methoden, Konstruktorüberladung
1) Erstellen Sie eine Klasse mit dem Namen „Trainer“.
– Standard-Instanzvariablen String dept,institut
haben
– Weisen Sie ihnen Werte zu – „Java“, „Payilagam“
– Haben Sie eine private Instanzvariable int Salary
– Weisen Sie 10000 als Wert für das Gehalt zu.
– Erstellen Sie eine Getter-Methode für das Gehalt.
– Instanzmethode training() mit void als Rückgabedatentyp haben
– Fügen Sie eine print-Anweisung innerhalb der Methode training() hinzu
2) Erstellen Sie unter „Trainer“ eine Unterklasse „SQLTrainer“.
– Enthält die Hauptmethode.
– Instanz-RAM für diese Klasse erstellen
– Behandeln Sie es mit dem richtigen Superklassenkonstruktor
– Greifen Sie auf Instanzvariablen der übergeordneten Klasse zu
– Rufen Sie die übergeordnete Klasseninstanzmethode training()
auf
– Greifen Sie mithilfe der Getter-Methode in der übergeordneten Klasse auf das Gehalt zu
package B15; public class Trainer { String dept = "java"; String institute = "payilagam"; private int salary = 10000; Trainer(String dept, String intitute) { this.dept = dept; this.institute = institute; } public static void main(String[] args) { Trainer trainerkumar = new Trainer("cse", "payilagam"); String a = trainerkumar.traing(); trainerkumar.salary(); System.out.println(a); } public void salary() { System.out.println("salary = " + salary); } public String traing() { return dept + " " + institute; } }
Ausgabe:
Gehalt = 10000
cse payilagam
package B15; public class SQLtrainer extends Trainer { SQLtrainer(String dept, String intitute) { super(dept, intitute); } public static void main(String[] args) { SQLtrainer ram = new SQLtrainer("cse111", "srit"); String a = ram.traing(); System.out.println(a); ram.salary(); System.out.println(ram.dept); System.out.println(ram.institute); } }
Ausgabe
cse111 payilagam
Gehalt = 10000
cse111
payilagam
Szenario #2:
Erwartetes Verständnis: Schnittstelle, Klasse, statische Variablen, dynamische Bindung
1) Erstellen Sie eine Schnittstelle namens „Actor“
– Variablen boolean makeUpRequired
haben
– Weisen Sie „makeUpRequired“ den Wert „true“ zu
– Variable String-Adresse haben.
– Weisen Sie der Adresse den Wert „Chennai“ zu.
– Void-Methoden act(), dance(), sing() haben
2) Erstellen Sie die Klasse als Actorsivakumar mit Hauptmethode
- Implementieren Sie die Schnittstelle "Akteur" in dieser Klasse.
- Geben Sie Ihre eigenen Definitionen für Methoden von der Schnittstelle
an
- haben eine statische Adresse der Variablen String.
- Die Adresse als „Coimbatore“ Wert zuweisen.
- haben Sie eine Instanzmethode "spreche ()" mit dem void -Rückgabendatentyp.
- Erstellen Sie eine Instanz für Actorsivakumar wie unten
Actorsivakumar as = New Actorsivakumar (65, „Audi Car“)
- mit dem richtigen Konstruktor
handhaben
- Greifen Sie auf alle Methoden von Actorsivakumar Class
zu
- Zugriff auf eine variable Adresse und drucken Sie den Wert
aus
- Erstellen Sie eine andere Instanz der Schnittstelle „Akteur“ mit dynamischem Bindungsansatz
Schauspieler ac = new Sivakumar ();
- mit dem richtigen Konstruktor
handhaben
- Zugangsmethoden in der Actorsivakumar -Klasse.
- Zugriff auf eine variable Adresse mithilfe von "AC" und drucken Sie den Wert
aus
- Beobachten und notieren Sie den Unterschied zwischen zwei Instanzen
package B15; public class Trainer { String dept = "java"; String institute = "payilagam"; private int salary = 10000; Trainer(String dept, String intitute) { this.dept = dept; this.institute = institute; } public static void main(String[] args) { Trainer trainerkumar = new Trainer("cse", "payilagam"); String a = trainerkumar.traing(); trainerkumar.salary(); System.out.println(a); } public void salary() { System.out.println("salary = " + salary); } public String traing() { return dept + " " + institute; } }
package B15; public class SQLtrainer extends Trainer { SQLtrainer(String dept, String intitute) { super(dept, intitute); } public static void main(String[] args) { SQLtrainer ram = new SQLtrainer("cse111", "srit"); String a = ram.traing(); System.out.println(a); ram.salary(); System.out.println(ram.dept); System.out.println(ram.institute); } }
Ausgabe:
Sivakumar handelt
Sivakumar spricht
Sivakumar tanzt
Sivakumar singt
65
Audi Car
Sivakumar handelt
Sivakumar tanzt
Sivakumar singt
Coimbatore
Chennai
wahre
Szenario #3:
Erwartete Verständnis: Abstraktion, Vererbung, Rückgabe von Schlüsselwort, Methodenargumenten, Konstruktor
1) Erstellen Sie eine abstrakte Klasse mit dem Namen "Smartphone"
- Fügen Sie die folgenden abstrakten Methoden hinzu
- int call (int Sekunden)
- void sendMessage ()
- void receiveCall ()
- Nicht abstrakte Methode fügen Sie void durchsuchen ()
- Drucken Sie "Smartphone -Browsen" in der Browse () -Methode -Definition
- Konstruktor wie unten haben.
öffentliches Smartphone ()
{
System.out.println („Smartphone in der Entwicklung“)
}
2) Erstellen Sie die Klasse als "FactoryDemo" als abstrakte Unterklasse des Smartphones
- Fügen Sie die folgenden abstrakten Methoden hinzu
- void verifyfingerprint ()
- void carepattern ()
- Nicht abstrakte Methode fügen Sie void durchsuchen ()
- Drucken Sie "Factory Demo Browsing" in Browse () Methode Definition
- Fügen Sie variabler booleaner ioriginalpiece hinzu und weisen Sie "Falsch" als Wert zu.
- Fügen Sie den statischen Variablen -Int -Preis hinzu und setzen Sie den Wert als 0.
3) Erstellen Sie die Klasse "Samsung" mit Hauptmethode als Unterklasse von Fabrikdemo.
- Unimplementierte Methoden
hinzufügen
- Fügen Sie den statischen Variablen -int -Preis hinzu und setzen Sie den Wert als 5000.
- Erstellen Sie eine Instanz für die Samsung -Klasse namens Sam
- Zugriff auf Browse () -Methode unter Verwendung der SAM -Instanz.
- Zugriff auf Preisvariable mit SAM -Instanz.
- Beachten Sie, welche Methode aufgerufen wird, und notieren Sie sich.
package B15; public interface Actor { boolean makeupRequired = true; String address = "chennai"; void act(); void dance(); void sing(); }
package B15; public class ActorSivakumar implements Actor { static String address = "coimbatore"; int num; String car; public ActorSivakumar(int num, String car) { this.num = num; this.car = car; } public static void main(String[] args) { ActorSivakumar as = new ActorSivakumar(65, "Audi car"); Actor ac = new ActorSivakumar(55, "benz car");// dynamic binding as.act(); as.speaking(); as.dance(); as.sing(); as.sell(); // ac.speaking();//dynamic binding ac.act(); ac.dance(); ac.sing(); // ac.sell();//dynamic binding System.out.println(ActorSivakumar.address); System.out.println(Actor.address); System.out.println(as.makeupRequired); } public void sell() { System.out.println(num + "\n" + car); } public void speaking() { System.out.println("sivakumar is speaking"); } public void act() { System.out.println("sivakumar is acting"); } public void dance() { System.out.println("sivakumar is dancing"); } public void sing() { System.out.println("sivakumar is singing"); } }
package B15; public abstract class Smartphone { public Smartphone()// constructor { System.out.println("Smartphone under development"); } public abstract int call(int second); public abstract void sendMessage(); public abstract void receivecall(); public void browse() { System.out.println("smartphone browsing"); } }
Ausgabe:
Smartphone in Entwicklung
Werksdemo -Surfen
Fingerabdruck
bereitstellen
ReceiveCall
B = 100
pric = 5000
Das obige ist der detaillierte Inhalt vonSzenario-, 3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!