Apprendre la programmation avec Java

Vous avez probablement déjà entendu le terme objet dans un contexte de programmation. Mais qu’est-ce que cela signifie vraiment? Commençons par regarder des objets du monde réel, comme des stylos, des livres, des smartphones, des ordinateurs, etc.

Toutes sortes d'objets!
Toutes sortes d’objets !

Chaque objet se présente sous différentes formes et formes, mais vous pouvez classer différentes versions du même objet dans une catégorie ou un groupe. C’est pourquoi vous pouvez vous rendre dans un magasin de meubles et reconnaître différents articles comme des « chaises » même s’ils ont l’air très différents les uns des autres.

Vous reconnaissez tous ces différents objets comme faisant partie du même groupe ou type. Vous remarquez des points communs entre différents objets, collectez les informations et créez une représentation mentale pour une catégorie d’objets donnée.

Par exemple, il existe différents types de livres, mais ils ont tous tendance à avoir un titre, un auteur, une couverture, des pages, etc. En d’autres termes, les livres individuels ont tous des attributs similaires qui vous permettent de les classer dans votre esprit dans la catégorie « livre. »

Livres de différentes tailles, couleurs et longueurs
Livres de différentes tailles, couleurs et longueurs

Cette liste mentale d’attributs que nous venons de décrire pour un livre agit comme une sorte de modèle pour cela objet. En programmation, c’est ce qu’on appelle une classe. Lors de la création d’une classe, vous pouvez trouver n’importe quel nom personnalisé, c’est pourquoi ils sont appelés un type nommé. Comme vous le verrez, ils vous permettent également de regrouper de nombreux détails, c’est pourquoi ils peuvent également être appelés types complexes. D’autre part, les types simples que vous connaissez déjà, comme int ou double, ont des noms prédéfinis par le langage de programmation et ne peuvent pas être modifiés.

Comment trouver des noms de classe ?

Comme pour nommer des variables, les noms de classes doivent être descriptifs et épelés (n’oubliez pas, évitez les abréviations!). Une différence clé est qu’au lieu d’utiliser CamelCase standard, la première lettre doit également être majuscule comme MarvelousCreature et non marvelousCreature.

Conception de classes

Pour voir comment concevoir une classe, continuons avec l’exemple du livre. Ci-dessous, nous avons identifié un échantillon d’informations pouvant décrire un livre donné:

  • titre

  • auteur

  • nombre de pages

  • éditeur

Ce sont des attributs de n’importe quel livre dans la vie réelle. Dans le contexte des classes, ces attributs sont appelés champs en Java. Les champs d’une classe sont simplement un nom de fantaisie pour quelque chose que vous connaissez déjà : les variables !

Maintenant, vous avez la théorie, alors mettons ça par écrit!

Pour déclarer une classe en Java, utilisez un mot clé class suivi d’un nom personnalisé. Après cela, terminez-le avec des accolades ({}) qui embrasseront tout le contenu. Cela inclut la liste complète des propriétés:

class Book {// functionality of the class}

Ajoutons maintenant des champs tels que définis précédemment:

class Book { String title; String author; int numberOfPages; String publisher="OC";}

Remarquez comment les trois premiers n’ont pas de valeurs, mais le dernier le fait? Si vous êtes un éditeur qui souhaite cataloguer vos livres, vous savez que la valeur de l’éditeur sera toujours la même, quel que soit le livre que vous produisez. Les titres des livres, les auteurs et les numéros de page, cependant, changeront en fonction du livre en particulier.

Si vous revenez à l’exemple original d’une librairie en ligne, cependant, la classe ressemblerait davantage à ceci:

class Book { String title; String author; int numberOfPages; String publisher;}

Étant donné que vous aurez des livres de nombreux éditeurs différents, vous ne pouvez pas mettre une valeur par défaut pour tous. Alors, ici, définissez le champ et mettez une valeur plus tard!

En utilisant des classes

Vous avez un tout nouveau type – Book sorted – trié! Que pouvez-vous en faire? Après tout, les classes sont plus abstraites ou conceptuelles. Les champs de classe sont comme un modèle sur une librairie en ligne: quel que soit le livre que vous recherchez, les mêmes informations apparaîtront (titre, auteur, nombre de pages, etc.).

Mais lorsque vous recherchez, vous ne tapez pas simplement « livre », n’est-ce pas? Ce n’est pas utile! Vous avez besoin d’une instance spécifique d’un livre, par exemple, Alice au pays des merveilles. Vous recherchez un objet réel que vous pouvez parcourir et lire. C’est la même chose en programmation informatique.

Pour travailler avec une classe, vous devez créer un objet concret de cette classe. En d’autres termes, vous avez besoin d’un objet spécifique, comme un livre particulier (Alice au pays des merveilles). Ce livre spécifique s’appelle une instance d’une classe! Comme son nom l’indique, le processus est appelé instanciation ou initialisation d’un objet. Pour cela, vous créez une variable de la classe.

En Java, chaque champ de l’objet créé doit avoir une valeur. Ces valeurs peuvent être fournies de plusieurs façons. Vous en avez vu un dans l’exemple de l’éditeur : définir en dur une valeur dans la définition de classe.

Une autre façon consiste à fournir une valeur dans l’instruction qui crée la classe. Voyons comment faire ça. Voici le code pour créer un livre avec des valeurs fournies au moment de la création de l’objet:

Instanciation d'un objet
Instanciation d’un objet

Comme vous pouvez le voir, il y a quelques éléments différents. Tout d’abord, faites une déclaration régulière d’une variable, avec son nom myBook et son type Book. Rappelez-vous comment nous avons dit qu’une classe est un type complexe nommé? Eh bien, en voici la preuve ! Au lieu de intdouble ou string, notre type est la classe que nous avons créée! Now

Maintenant, voici la partie cool. La variable est initialisée avec l’expression de création d’objet new Book("Coding is art","Becky James",425);. Cette expression est composée du mot clé new, suivi du nom de la classe (Book), et de quelques parenthèses () avec des valeurs à l’intérieur. Comme vous pouvez le voir, les parenthèses contiennent une valeur spécifiée pour chacun des champs d’origine : titleauthor et numberOfPages. Nous avons fait en sorte de séparer chacun avec une virgule. Enfin, terminez par un point-virgule ;. Avec cela, vous avez créé une instance du livre de classe! Working

Travailler avec des attributs (champs)

Ouf ! C’était beaucoup de vocabulaire et de concepts. Avant de passer à autre chose, récapitulons avec un diagramme rapide:

De la classe à l'objet!
De la classe à l’objet !

Est-ce mieux? N’oubliez pas :

  • Utilisez une classe comme modèle pour vos futurs objets. Dans une classe, définissez le nom et le type de certaines variables. En Java, ceux-ci sont appelés attributs en général et champs en particulier.

  • Pour utiliser le plan cool que vous avez fait, vous devez créer un objet en utilisant le processus d’instanciation. Cela signifie déclarer une variable avec votre classe comme type, puis utiliser l’expression de création d’objet que vous avez vue ci-dessus.

  • Lorsque vous instanciez un objet, vous créez des valeurs pour chacun des champs que vous avez déjà définis dans votre classe.

  • Un objet est appelé une instance d’une classe.

Maintenant vous êtes prêt! Vous avez votre objet livre, mais dites que vous changez d’avis sur la valeur de vos variables. Comment accédez-vous aux champs associés à votre nouvel objet brillant ?

Une façon courante d’accéder aux champs dans de nombreux langages de programmation est d’utiliser ce qu’on appelle une notation par points. Cela signifie que vous devez écrire le nom d’une instance ou d’un objet suivi d’un nom d’attribut d’intérêt, séparé par un point : instanceVariableName.attributeName.

myBook.title = "Coding is Art";myBook.author = "Becky James";myBook.numberOfPages = myBook.numberOfPages + 10;

Maintenant, vous pouvez modifier la valeur des champs dans votre objet! Imaginez que vous avez ajouté dix pages parce que vous avez oublié d’ajouter l’index du livre. Vous pouvez soit taper le nouveau numéro directement, soit ajouter dix pages à la valeur existante, comme à la troisième ligne. C’est assez pratique lors de petites modifications. 🙂

Essayez-le vous-même

https://api.next.tech/api/v1/publishable_key/2A9CAA3419124E3E8C3F5AFCE5306292?content_id=2871d3da-5053-4373-a813-46b6fcf8118c

Résumé

Dans ce chapitre, vous avez appris les fondamentaux des objets:

  • Une classe est un plan d’un objet.

  • Une variable d’une classe est appelée une instance d’une classe ou d’un objet.

  • Une classe vous permet de créer des types complexes en regroupant ses attributs en définissant des champs.

  • Pour créer un objet, vous devez déclarer une variable d’une classe et l’instancier.

  • La notation par points donne accès aux champs.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.