Opérateurs : Les opérateurs +, > et == sont surchargeables.
Quelles sont les valeurs par défaut des modificateurs pour les classes, méthodes
et champs : "ex / namespace NS{ class A{void m(){};int n;} }"
Que signifie "internal" ? Portée limitée...
Tableaux - soit une classe A ainsi
class A {
public A() { n = 1; }
private int n = 1;
public override string ToString() { return n.ToString(); }}
dans le Main on code :
A[] tab = new A[10];
for (int i=0; i<tab.Length; i++)
Console.Write(tab[i].ToString());
La sortie est :
Comparaison - soit...
string s1 = "abc";
string s2 = "abc";
que valent :
s1==s2
s1.Equals(s2)
Comparaison - soit…
object o1 = new object()
object o2 = new object()
que valent :
o1==o2
o1.Equals(o2)
Que peut on déclarer dans une interface ?
- méthode d'instance
- méthode de classe (static)
- propriété
- champ non static
Héritage - Dans une sous classe quel mot clé permet de référencer
la super classe (par exemple pour appeler son constructeur) :
Différence entre les mots clés const et readonly - choisissez la bonne réponse :
Polymorphisme - si une méthode en redéfinit une autre :
Quel mot clef doit avoir la déclaration dans la sous-classe ?
a - aucun mot clef requis
b - virtual
c - static
d - override
e - new
Quel mot clef doit avoir la déclaration dans la super-classe ?
a - aucun mot clef requis
b - virtual
c - static
d - override
e - new
Exception - les ApplicationException sont des exceptions :
Donner les types qui passent par défaut par valeur :
- struct
- int
- string
- object
- int[]
- enum
new - l'emploi de new implique une allocation sur le tas.
using - using possède deux significations différentes.
Une méthode Main peut se déclarer : static int Main().
Libération mémoire - nous pouvons créer des destructeurs en C# ainsi :
Avec .Net le code qui s'exécute est géré par :
Si l'on ne fournit pas de constructeur, le compilateur en génère un lui même.
L'utilisation d'un delegate implique celle d'un event.
Utilisation de if. Soit le code :
int n = 1;
if (n) produit
Conversion :
short s = 0;
s = s+ 1; …
Condition
int a=1;
int b=2;
après le test suivant if ((a-- == 0) && (--b == 0))
Héritage - dites tout ce qui est vrai :
a - une classe peut hériter d'une autre classe
b - une classe peut hériter de plus d'une autre classe
c - une classe peut implémenter une interface
d - une classe peut implémenter plus d'une interface
e - une interface peut hériter d'une autre interface
f - une interface peut implémenter une classe
Collections - dites tout ce qui est vrai :
Dans ma collection ArrayList...
a - je peux mettre un string
b - je peux mettre un int
c - je peux mettre un autre ArrayList
Générics - Une interface peut être générique.
ex : interface Iqqch <T> { … }