Maison >Java >javaDidacticiel >Scénario-,3
Remarque : ajoutez la méthode principale si nécessaire.
Chaque scénario présenté ici vise à bien comprendre la POO (programmation orientée objet) via Java.
Scénario n°1 :
Compréhension attendue : modificateurs d'accès, héritage unique, méthodes getter, surcharge du constructeur
1) Créez une classe nommée « Formateur ».
– Avoir des variables d'instance par défaut String département, institut
– Attribuez-leur des valeurs – « Java », « Payilagam »
– Avoir un salaire int variable d’instance privée
– Attribuez 10 000 comme valeur pour le salaire.
– Créez une méthode getter pour le salaire.
– Avoir une méthode d'instance training() avec void comme type de données de retour
– Ajoutez une instruction print dans la méthode training()
2) Créez une sous-classe « SQLTrainer » sous « Trainer ».
– Contenez la méthode principale.
– Créer une instance RAM pour cette classe
– Gérer avec le constructeur de super classe approprié
– Accéder aux variables d’instance de classe parent
– Appeler la méthode d'instance de classe parent training()
– Accédez au salaire en utilisant la méthode getter dans la classe parent
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; } }
sortie :
salaire = 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); } }
sortie
cse111 payilagam
salaire = 10000
cse111
payilagam
Scénario n°2 :
Compréhension attendue : interface, classe, variables statiques, liaison dynamique
1) Créez une interface appelée « Acteur »
– Avoir des variables booléennes makeUpRequired
– Attribuez une valeur « vraie » pour « makeUpRequired »
– Avoir une adresse de chaîne variable.
– Attribuez la valeur « Chennai » à l’adresse.
– Avoir les méthodes void act(), dance(), sing()
2) Créez une classe nommée ActorSivakumar avec la méthode principale
– implémentez l’interface « Acteur » pour cette classe.
– Donnez vos propres définitions pour les méthodes de l'interface
– Avoir une adresse de chaîne variable statique.
– Attribuez une valeur à l’adresse comme « Coimbatore ».
– Avoir la méthode d’instance « Speaking() » avec le type de données de retour void.
– Créez une instance pour ActorSivakumar comme ci-dessous
ActeurSivakumar as = nouvel acteurSivakumar(65, « Audi Car »)
– Gérer avec le constructeur approprié
– Accédez à toutes les méthodes de la classe ActorSivakumar
– Accédez à l’adresse de la variable et imprimez la valeur
– Créez une autre instance de l'interface « Acteur » en utilisant l'approche de liaison dynamique
Acteur ac = nouveau Sivakumar();
– Gérer avec le constructeur approprié
– Accéder aux méthodes de la classe ActorSivakumar.
- Accédez à l'adresse de la variable en utilisant l'instance 'ac' et imprimez la valeur
– Observez et notez la différence entre deux instances
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); } }
Sortie :
sivakumar agit
Sivakumar parle
Sivakumar danse
sivakumar chante
65
Voiture Audi
sivakumar agit
Sivakumar danse
sivakumar chante
coimbatore
Chennai
vrai
Scénario n°3 :
Compréhension attendue : abstraction, héritage, mot-clé de retour, arguments de méthode, constructeur
1) Créez une classe abstraite nommée « SmartPhone »
– Ajoutez les méthodes abstraites ci-dessous
– appel int(int secondes)
– annuler sendMessage()
– annuler recevoirCall()
– Ajouter une méthode non abstraite void Browse()
– imprimer « Navigation sur smartphone » dans la définition de la méthode Browse()
– Avoir le constructeur comme ci-dessous.
Smartphone public()
{
System.out.println(« Smartphone en cours de développement »);
>
2) Créez une classe appelée « FactoryDemo » en tant que sous-classe abstraite de SmartPhone
– Ajoutez les méthodes abstraites ci-dessous
– annuler verifyFingerPrint()
– void providePattern()
– Ajouter une méthode non abstraite void Browse()
– imprimer « Factory Demo navigation » dans la définition de la méthode Browse()
– Ajoutez la variable booléenne isOriginalPièce et attribuez « false » comme valeur.
– Ajoutez le prix int de la variable statique et définissez la valeur sur 0.
3) Créez une classe appelée « Samsung » avec la méthode principale comme sous-classe de FactoryDemo.
– Ajouter des méthodes non implémentées
– Ajoutez le prix int de la variable statique et définissez la valeur sur 5000.
– Créer une instance pour la classe Samsung appelée sam
– Accédez à la méthode Browse() en utilisant la même instance.
– Accédez à la variable de prix en utilisant la même instance.
– Observez quelle méthode est appelée et notez-la.
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"); } }
Sortie :
Smartphone en cours de développement
Navigation dans FactoryDemo
empreinte digitale
fournir un modèle
recevoir un appel
b = 100
prix = 5000
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!