C# Syntaxe de base
C# est un langage de programmation orienté objet. Dans la méthodologie de programmation orientée objet, un programme est constitué de divers objets en interaction. Les objets de même nature ont généralement le même type, ou en d'autres termes, appartiennent à la même classe.
Par exemple, prenons un objet Rectangle. Il possède des propriétés length et width. Selon la conception, il peut devoir accepter ces valeurs de propriétés, calculer l'aire et afficher les détails.
Regardons une implémentation d'une classe Rectangle et utilisons-la pour discuter de la syntaxe de base de C# :
Exemple
namespace RectangleApplication
{
class Rectangle
{
// Variables membres
double length;
double width;
public void Acceptdetails()
{
longueur = 4.5;
width = 3.5;
}
public double GetArea()
{
return length * width;
}
public void Display()
{
Console.WriteLine("Length: {0}", length);
Console.WriteLine("Width: {0}", width);
Console.WriteLine("Area: {0}", GetArea());
}
}
class ExecuteRectangle
{
static void Main(string[] args)
{
Rectangle r = new Rectangle();
r.Acceptdetails();
r.Afficher();
Console.ReadLine();
}
}
}
Essayez-le vous-même »
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
Length: 4.5 Width: 3.5 Area: 15.75
usingMots-clés
La première instruction de tout programme C# est :
using System;
usingLe mot-clé est utilisé pour inclure un espace de noms dans un programme. Un programme peut contenir plusieurs instructions using.
classMots-clés
classLe mot-clé est utilisé pour déclarer une classe.
Commentaires en C#
Les commentaires sont utilisés pour expliquer le code. Le compilateur ignore les entrées de commentaire. Dans les programmes C#, les commentaires multilignes commencent par/*Commencez par le caractère*/Terminez, comme indiqué ci-dessous :
/* 这个程序演示 C# 的注释 使用 */
Les commentaires monolignes utilisent//une représentation symbolique. Par exemple :
// This line is a comment
Variable membre
Les variables sont des propriétés ou des membres de données d'une classe, utilisées pour stocker des données. Dans le programme ci-dessus,RectangleLa classe possède deux variables membres nomméeslengthetwidth。
Fonction membre
Une fonction est une série d'instructions qui effectuent une tâche spécifiée. Les fonctions membres d'une classe sont déclarées dans la classe. Notre exemple de classe Rectangle contient trois fonctions membres : AcceptDetails、GetAreaetDisplay。
Instancier une classe
Dans le programme ci-dessus, la classeExecuteRectangleest celle qui contientMain() Méthodes et instanciationRectangleLa classe de la classe.
Identificateurs
Les identificateurs sont utilisés pour identifier des classes, des variables, des fonctions ou tout autre élément défini par l’utilisateur. En C#, le nommage doit suivre les règles de base suivantes :
- Les identificateurs doivent commencer par une lettre, un trait de soulignement, ou@Commencer par une lettre, suivie d’une série de lettres, de chiffres (0 - 9), de traits de soulignement (_) et de @.
- Le premier caractère d’un identificateur ne peut pas être un chiffre.
- Les identificateurs ne doivent contenir aucun espace ou symbole incorporé, tel que ? - +! # % ^ & * ( ) [ ] { } . ; : " ' / \.
- Les identificateurs ne peuvent pas être des mots-clés C#, sauf s’ils ont un préfixe @. Par exemple, @if est un identificateur valide, mais if ne l’est pas, car if est un mot-clé.
- Les identificateurs doivent être sensibles à la casse. Les lettres majuscules et minuscules sont considérées comme des lettres différentes.
- Ne doit pas être identique aux noms de bibliothèques de classes de C#.
Mots-clés C#
Les mots-clés sont des mots réservés prédéfinis pour le compilateur C#. Ces mots-clés ne peuvent pas être utilisés comme identificateurs. Toutefois, si vous souhaitez utiliser ces mots-clés comme identificateurs, vous pouvez préfixer le mot-clé avec le caractère @.
En C#, certains mots-clés ont une signification particulière dans le contexte du code, comme get et set ; ceux-ci sont appelés mots-clés contextuels.
Le tableau suivant répertorie les mots-clés réservés et les mots-clés contextuels en C# :
| Mots-clés réservés | ||||||
| abstract | as | base | bool | break | octet | case |
| catch | char | checked | classe | const | continue | decimal |
| default | delegate | do | double | else | enum | event |
| explicit | extern | false | finally | fixed | float | for |
| foreach | goto | if | implicit | in | in (generic modifier) | int |
| interface | internal | est | lock | long | namespace | nouveau |
| null | objet | operator | out | out (generic modifier) | override | params |
| private | protected | public | readonly | ref | return | sbyte |
| sealed | short | sizeof | stackalloc | static | string | struct |
| switch | this | throw | vrai | try | typeof | uint |
| ulong | unchecked | unsafe | ushort | using | virtual | void |
| volatile | while | |||||
| Mots clés contextuels | ||||||
| ajoutez | alias | ascending | descending | dynamic | from | get |
| global | group | into | join | let | orderby | partial (type) |
| partial (méthode) | supprimer | select | set | |||
Instructions de niveau supérieur
Dans C# 9.0, le concept d’instructions de niveau supérieur a été introduit. Il s’agit d’un nouveau paradigme de programmation qui permet aux développeurs d’écrire des instructions directement au niveau supérieur d’un fichier sans avoir besoin de les encapsuler dans des méthodes ou des classes.
Fonctionnalités :
-
Aucune classe ni méthode requise: Les instructions de niveau supérieur vous permettent d’écrire du code directement au niveau supérieur d’un fichier sans définir de classes ni de méthodes.
-
Fichier comme point d’entrée: Un fichier contenant des instructions de niveau supérieur est traité comme le point d’entrée du programme, comme dans les versions précédentes de C#.
Mainméthode. -
Automatique
MainMéthodes: Le compilateur génère automatiquement uneMainméthode, et prend les instructions de niveau supérieur comme leMaincorps de la méthode. -
Prend en charge les fonctions locales: Bien qu’il ne soit pas nécessaire de définir une classe, les fonctions locales peuvent toujours être définies dans un fichier avec des instructions de niveau supérieur.
-
Meilleure lisibilité: Pour les scripts ou outils simples, les instructions de niveau supérieur offrent une meilleure lisibilité et concision.
-
Convient aux petits projets: Les instructions de niveau supérieur conviennent très bien aux petits projets ou scripts, vous permettant d'écrire et d'exécuter rapidement du code.
-
Compatible avec le code existant: Les instructions de niveau supérieur peuvent être utilisées avec des bases de code C# existantes sans affecter le code existant.
Code C# traditionnel- Avant d'utiliser les instructions de niveau supérieur, vous deviez écrire un programme C# comme ceci :
Exemple
namespace MyApp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
}
Code C# utilisant les instructions de niveau supérieur- Avec les instructions de niveau supérieur, cela peut être simplifié en :
Exemple
Console.WriteLine("Hello, World!");
Les instructions de niveau supérieur prennent en charge toute la syntaxe C# courante, y compris la déclaration de variables, la définition de méthodes, la gestion des exceptions, etc.
Exemple
using System.Linq;
// Déclarations de variables dans les instructions de niveau supérieur
int number = 42;
string message = "The answer to life, the universe, and everything is";
// Variable de sortie
Console.WriteLine($"{message} {number}.");
// définir et appeler des méthodes
int Add(int a, int b) => a + b;
Console.WriteLine($"La somme de 1 et 2 est {Add(1, 2)}.");
// utiliser LINQ
var numbers = new[] { 1, 2, 3, 4, 5 };
var evens = numbers.Where(n => n % 2 == 0).ToArray();
Console.WriteLine("Nombres pairs : " + string.Join(", ", evens));
// Gestion des exceptions
try
{
int zero = 0;
int result = number / zero;
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Error: " + ex.Message);
}
Notes
- Restrictions de fichier :Les instructions de niveau supérieur ne peuvent être utilisées que dans un seul fichier source. Si plusieurs fichiers utilisent des instructions de niveau supérieur dans un projet, cela provoquera une erreur de compilation.
- Point d'entrée du programme :Si des instructions de niveau supérieur sont utilisées, le fichier contient implicitement une méthode Main, et le fichier devient le point d'entrée du programme.
- Limitations de portée :Le code dans les instructions de niveau supérieur partage une portée globale, ce qui signifie que les variables et méthodes définies dans les instructions de niveau supérieur sont accessibles dans tout le fichier.
Les instructions de niveau supérieur présentent des avantages significatifs pour simplifier la structure du code, réduire la difficulté d'apprentissage et accélérer le développement, et conviennent particulièrement à l'écriture de programmes et de scripts simples.
autres extensions