Classe C#

PHPz
PHPzoriginal
2024-09-03 15:26:02616parcourir

Dans cet article, nous découvrirons la classe C#. La classe est le modèle des objets créés. Dans un scénario en temps réel, supposons que Car soit une classe. La voiture a donc certaines caractéristiques comme la forme, la vitesse, l’intérieur, la couleur et bien d’autres choses.  De nombreuses entreprises fabriquent donc des voitures qui répondent à ces exigences. Par exemple, chaque voiture de Maruti, Hyundai possède ces objets. Nous pouvons définir une classe nommée car et créer les objets selon les caractéristiques de la voiture. De même, dans la POO ou dans un programme orienté objet, une classe possède de nombreuses propriétés telles que des événements, des méthodes, des champs, etc. Une classe permet à un programmeur de créer des types d'objets personnalisés selon ses besoins.

Syntaxe :

On peut définir la classe avec le mot-clé nommé the class suivi du nom de la classe que l'on va décider et il est entouré d'une paire d'accolades.

Class Test {  }

Exemples d'implémentation de la classe C#

Vous trouverez ci-dessous les exemples qui montrent comment cela peut être mis en œuvre

Exemple n°1

Cours abstrait

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public abstract class Animals
{
public abstract void aml ();      // abstract class method
}
public class Cat : Animals     // inheritance
{
public override void aml()
{
Console.WriteLine("This is first animal");
}
}
public class Dog : Animals   // another class inheritance
{
public override void aml()
{
Console.WriteLine("This is second animal");
}
}
public class main_method
{
public static void Main()      // main method
{
Animals a;
a = new Cat();
a.aml();
a = new Dog();
a.aml();
Console.ReadLine();
}
}

Explication : Dans l'exemple ci-dessus, il existe une classe abstraite Animals avec la méthode abstraite aml(). La classe Animaux est inhérente à la classe enfant « Chat » et à une autre classe enfant « Chien ». Dans la méthode principale, « a » est l’objet d’une classe Animals qui ne peut pas être instanciée. Les classes abstraites sont utilisées au moment de l'héritage et contiennent des constructeurs et des destructeurs. Le mot-clé Override est indispensable avant la méthode abstraite qui est utilisée pour hériter de la classe enfant.

Sortie :

Classe C#

Exemple n°2

Classe scellée

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public class Animal
{
public virtual void sleep()
{
Console.WriteLine("Animals are sleeping");
}
public virtual void eat()
{
Console.WriteLine("Animals are eating");
}
}
public class Cat : Animal    // inheritance
{
public override void sleep()
{
Console.WriteLine("Cat is sleeping");
}
public sealed override void eat()  // sealed method
{
Console.WriteLine("Cat is eating");
}
}
public class Dog : Cat  // inheritance
{
public override void Sleep()
{
Console.WriteLine("Sleeping");
}
public override void eat()
{
Console.WriteLine("Eating");
}
}
public class TestSealed
{
public static void Main()    // main method
{
Dog d = new Dog();
d.eat();
d.fly();
}
}

Explication : Dans l'exemple ci-dessus, il existe une méthode scellée qui est utilisée pour empêcher l'héritage des autres classes. Ainsi, dans ce cas, lorsque nous essayons d’hériter de la classe scellée, le compilateur lit le mot-clé scellé et renvoie une erreur. Par conséquent, il ne peut pas être annulé.

Sortie :

Classe C#

Exemple #3

Classe statique

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Office
{
public static string Name;          // static fields
public static string Location;
static Office()        // constructor
{
Name = "Microsoft";
Location = "Hyderabad";
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Office.Name);
Console.WriteLine(Office.Location);
Console.Read();
}
}

Explication : Dans l'exemple ci-dessus, il existe une classe statique et un mot-clé static est utilisé pour les classes statiques qui rendent la classe non instanciable. Il se compose du nom et de l’emplacement d’un membre statique. Dans la méthode principale, nous accédons aux données statiques membres du bureau de classe. Un objet pour les classes statiques ne peut pas être créé. Les classes statiques ne peuvent être héritées d’aucune autre classe.

Sortie :

Classe C#

Exemple n°4

Cours partiel

Code :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
// partial class1.cs
public partial class Class1
{
private string EmpName;
private int EmpId;
public Class1(string a, int t)
{
this.EmpName = a;
this.EmpId = t;
}
}
// partial class2.cs
public partial class Class1
{
public void Display()
{
Console.WriteLine("Employee name is : " + EmpName);
Console.WriteLine("Employee Id is : " + EmpId);
}
}
public class Class
{
private string EmpName;
private int EmpId;
public Class(string a, int t)
{
this.EmpName = a;
this.EmpId = t;
}
public void Display()
{
Console.WriteLine("Employees name is : " + EmpName);
Console.WriteLine("Employee Id is : " + EmpId);
}
}

Explication : Dans l'exemple ci-dessus, la classe partielle est implémentée. Il peut être utilisé lorsque nous avons un long cours. Donc pour alléger le code nous pouvons définir plusieurs fichiers. Partial est le mot-clé utilisé avec ces types de classes. Il peut donc être divisé en plusieurs fichiers constitués d’une méthode utilisant le mot-clé partial. Dans ce class1.cs partiel et class2.cs partiels sont combinés par le compilateur en un seul fichier.

Sortie :

Classe C#

Remarques : Les spécificateurs d'accès permettent d'accéder au membre ainsi qu'à la classe elle-même.

Conclusion

Pour accéder à tous les membres de la classe, nous devons utiliser l'opérateur point. L'opérateur point permet de lier le nom de l'objet au nom du membre. Nous pouvons définir des méthodes, des constructeurs, des destructeurs à l'intérieur de la classe.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Synchronisation des threads C#Article suivant:Synchronisation des threads C#