Quelle est la différence fondamentale entre l'instance de VB.NET et la fenêtre C #?
vb.net, chaque fenêtre a une instance par défaut, alors que C # ne le fait pas. Cette différence provenait de différents concepts de conception de différentes langues. L'attribut VB.NET identifie directement l'instance de la classe Window, tandis que C # n'a pas le concept de cette instance par défaut.
L'instance par défaut de vb.net: (Name)
les attributs leur permettent d'accéder directement à l'instance par défaut de la fenêtre. Il n'y a pas d'exemple par défaut dans C #:
(Name)
C # met l'accent sur le principe orienté objet et oblige les programmeurs à créer explicitement des instances. Contrairement à VB.net, C # n'autorise aucun attribution et méthodes pour nommer l'espace de nom mondial. Par conséquent, C # ne fournit pas de mécanisme pour définir l'instance par défaut du type de définition.
Exemple de code:
En C #, l'instance et l'affichage de la fenêtre sont explicites:
Dans vb.net, il peut être implicitement instancié ou explicitement instancié:
Code IL généré:
<code class="language-csharp">// 唯一方法 Form1 frm = new Form1(); frm.Show();</code>
pour instancier la classe
et appelez la méthode<code class="language-vb.net">' 常用方法一 Form1.Show() ' 常用方法二 Dim frm As New Form1() frm.Show()</code>
d'instructions et appelle directement la méthode sur l'instance créée .
C # peut simuler l'instance par défaut? newobj
Form1
Vous pouvez simuler l'instance par défaut en utilisant des attributs statiques dans la classe C # Window pour simuler l'instance par défaut. Cependant, cette méthode n'est pas suffisamment élégante et nécessite un code de modèle supplémentaire. Show()
newobj
Les raisons des différences de conception: Form1
Show()
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!