Résumé orienté objet par les débutants (Java)

introduction

J'ai écrit sur l'orientation objet que j'ai apprise lors de la formation comme mémo pour moi-même. Je mâche et résume le contenu que j'ai obstrué ou étudié.

Contenu

·classe ·exemple ・ Variables membres · Méthode ·constructeur ・ Variable de classe (variable statique) ・ Héritage ·passer outre

Explication grossière

・ Classe: modèle, modèle (ex. Humain) -Instance: Une entité créée à partir d'une classe (ex. A, B, ...)

-Variables membres: attributs d'instance (ex. Force physique, intelligence, âge) -Méthode: actions qu'une instance peut faire (ex. Marcher, dire bonjour) -Constructeur: réglage initial des variables membres

-Variable de classe (variable statique): attribut de classe (si vous réécrivez les données de M. A, les données de M. A et celles de M. B seront modifiées de la même manière)

-Héritage: Lorsqu'une classe est dérivée, la fonction de la classe d'origine (super classe) peut également être utilisée. -Override: lors de l'héritage d'une classe, redéfinissez (écrasez) la méthode (processus) de la superclasse dans la sous-classe.

Exemple

En bas, j'ai écrit le code qui montre la relation entre les classes, les instances, l'héritage, etc., veuillez donc lire l'explication en la comparant.

Classes et instances

Après avoir réalisé un modèle humain, créez un modèle japonais aux caractéristiques humaines, Sur cette base, nous créons une personne nommée Taro.

À l'heure actuelle, les humains sont des superclasses, les japonais sont des sous-classes et Taro est une instance.

Variables de membre

Les variables membres sont le statut de l'instance. Cette fois, les humains auront le statut de force physique, d'intelligence et de langage.

constructeur

Il s'agit du paramètre initial des variables membres. Dans ce cas, la force physique et l'intelligence humaines sont définies par des arguments et la langue est définie sur null par défaut.

De plus, comme le japonais est ma langue maternelle, j'ai défini la langue sur le japonais dans la classe japonaise (modèle japonais).

Méthode

Nous avons défini deux actions que tous les humains peuvent faire: marcher et saluer.

De plus, en tant que comportement propre aux japonais, nous avons défini le comportement de se tortiller dans la classe japonaise.

De plus, les salutations sont des actions que les humains exécutent couramment, mais la forme de leur sortie est Si le japonais "Bonjour", différent du similaire si le chinois "Nihao". Par conséquent, vous surchargez la méthode greet en classe japonaise, nous essayons de saluer avec "Hello".

================

Human.java


//Classe (modèle humain)
public class Human{

	//Variables membres (attributs d'instance)
	int pysicalPower; //Force physique
	int intellectualPower; //Intelligence
	String langage; //Langue

	//Variable de classe (variable statique)
	static int magicPower = 0;  //Puisqu'il est statique, tous les humains ont 0 pouvoir magique. Si le pouvoir magique de quelqu'un est défini sur 10, tous les autres auront également un pouvoir magique de 10.

	//Constructeur (réglage initial des variables membres)
	public Human(int pysical, int intelligence) {
		this.pysicalPower = pysical;
		this.intellectualPower = intelligence;
		this.langage = null;
	}

	//Méthode (comportement)
	public void walk() {  //marcher
		System.out.println("Technologie Tech");
	}
	public void greet() {  //Saluer
		System.out.println("Hello");
	}

	//Réglage de la méthode de confirmation
	public int getPysicalPower() {
		return pysicalPower;
	}
	public int getIntellectualPower() {
		return intellectualPower;
	}
	public String getLangage() {
		return langage;
	}
}

Japanese.java


//Classe (modèle japonais)
public class Japanese extends Human { //Une sous-classe qui hérite de la classe Human

	//constructeur
	Japanese(int pysical, int intelligence) {
		super(pysical, intelligence); //Appeler le constructeur parent
		super.langage = "Japonais";
	}

	//Méthode
	public void ojigi() {  //s'incliner
		System.out.println("Pécoli");
	}

	//passer outre
	@Override
	public void greet() {
		System.out.println("Bonjour");
	}
}

Main.java


public class Main {

	public static void main(String[] args) {

		//Générer une instance (individuelle basée sur un modèle)
		Japanese Taro = new Japanese(50, 30);  /*Taro japonais(Force physique 50, intelligence 30)Générer un*/

		//Vérifier le statut de Taro
		System.out.println("La force physique de Taro" + Taro.getPysicalPower());
		System.out.println("L'intelligence de Taro" + Taro.getIntellectualPower());
		System.out.println("La langue utilisée par Taro est" + Taro.getLangage());
		System.out.println(); //Ligne blanche


		//Appeler une méthode (comportement)
		Taro.walk(); //Méthodes de classe humaine

		Taro.ojigi(); //Méthode de classe japonaise

		Taro.greet(); //Méthode remplacée dans la classe japonaise

	}

}

Résultat d'exécution


La force physique de Taro est de 50
L'intelligence de Taro a 30 ans
La langue de Taro est le japonais

Technologie Tech
Pécoli
Bonjour

en conclusion

Quand j'ai pensé et écrit le code qui utilise réellement l'orientation objet, j'ai acquis une compréhension un peu plus profonde. Il y a certaines parties que je ne pouvais pas bien expliquer parce que je ne les comprenais pas bien, et certains contenus que je n'ai pas inclus pour qu'ils ne soient pas compliqués, alors je pense que ce serait peut-être une bonne idée d'écrire la deuxième au fur et à mesure que l'apprentissage progresse. (Si vous vous sentez comme ça ...)

référence

Sites auxquels j'ai fait référence lors de l'apprentissage

Recommended Posts

Résumé orienté objet par les débutants (Java)
Résumé orienté objet
[Java] Orienté objet
[Pour les débutants] Résumé du constructeur java
Cours orienté objet pour débutants envoyé par des débutants
Récapitulatif du problème Java "Pass by Reference"
Résumé de la programmation orientée objet utilisant Java
Résumé des connaissances Java
Résumé des génériques Java
Résumé relatif à Java
FizzBuzz orienté objet (Java)
[Java] Syntaxe orientée objet --Constructeur
Notions de base orientées objet (Java)
Résumé du document Java 8
[Java] Résumé orienté objet_Partie 2
Résumé du document Java 11
[Java] Syntaxe orientée objet --Package
Résumé de la compréhension de Docker par les débutants ① ~ docker run -p ~
Résumé des nouvelles fonctionnalités de Java 12
[Résumé] Par exemple, préparation de l'environnement Java
3ème résumé efficace de Java
Résumé des nouvelles fonctionnalités de Java 13
Java statique [Résumé personnel]
Résumé des threads sûrs ~ Java ~
Résumé de la spécialisation des primitives Java
Résumé du lien de développement Java
Résumé personnel sur Java
Résumé des nouvelles fonctionnalités de Java 10
résumé des expressions régulières java
Résumé des nouvelles fonctionnalités de Java 14
Résumé du support Java 2018
Résumé du modèle de conception Java
Résumé du mot réservé Java
Résumé approximatif du flux Java8
[Java] Résumé de base de Java non couvert par Progate ~ Partie 1 ~
Résumé des révisions (nouveaux problèmes de yuan) par version Java
Qu'est-ce que l'assertion Java? Résumé.
[Résumé] Pourquoi le rendre orienté objet
[Java] Compréhension débutante de Servlet-②
[Java11] Résumé du flux -Avantages du flux-
Révision et résumé de Progate Java (débutant)
Exécution de débogage Java [pour les débutants Java]
[Java] Instruction de base pour les débutants
[Java] Compréhension débutante de Servlet-①
[Java] Résumé des expressions régulières
[Java] Résumé des opérateurs (opérateur)
Orienté objet avec Strike Gundam (java)
Flux Java8, résumé de l'expression lambda
[Pour les débutants] À propos de la syntaxe JavaScript expliquée par Java Gold
[Java] Résumé de base de Java non couvert par Progate ~ Partie 2 ・ Liste ~
Mémorandum des éléments majeurs de Java 3 (orienté objet)
Résumé des bases du langage Java
Astuces Java - Résumé de l'exécution de Spring
Résumé de la classe Java Math
Java pour les débutants, masquage des données
Récapitulatif des valeurs renvoyées par la méthode des caractéristiques Spliterator #java
Les débutants en Java lisent Hello World
[Java11] Résumé de l'utilisation du flux -Basics-
[Java] Résumé de la syntaxe de contrôle