{filelink=17510}
class="codeShade">
using System;
class NotFoundException : ApplicationException { }
public interface IPhoneNumber {
string Number {
ge
|
Générique
Exemple de contrainte d’héritage et surcharge des méthodes
{filelink=17493}
using System;
public class ClasseDeBase
{
public virtual void MethodA(T arg)
where T : new()
{
}
}
public class C
|
Exemple d’une collection générique
{filelink=17506}
using System;
using System.Collections.Generic;
namespace Generique
{
public class MaListe
{
private List elements = new List(
|
Création et utilisation d’une classe générique
{filelink=17494}
public class ListeGénérique
{
//Ajouter un élément dans la liste générique
public void ajouterElemnt(T input) { }
}
public class MaClass
|
Combinaison de surcharge des méthodes générique
{filelink=17508}
/*
Base Method Derived Method Comments
Nongeneric Generic (open) Permitted
Nongeneric Generic (closed) Permitte
|
Exemples des champs génériques
{filelink=17495}
using System;
using System.Collections.Generic;
using System.Text;
class MesChampsGeneriques
{
private T premierChamps;
private U seco
|
Contrainte de classe de Base
{filelink=17509}
using System;
class ClasseBase {
public void MethodeBonjour() {
Console.WriteLine("Bonjour");
}
}
class B : ClasseBase { }
class C {
|
Rapport entre les types des paramètres
{filelink=17496}
using System;
class A {
}
class B : A {
}
// V hérite de T
class Gen where V : T {
}
class Test {
public static void Main() {
Gen x
|
Générique: Exemple d’utilisation du mot clé ‘default’
{filelink=17497}
using System;
class MaClasse
{
}
class Sakoba
{
public T objet;
public Sakoba()
{
objet = default(T);
}
}
class UtilisationDefa
|
Exemple de méthode générique
{filelink=17482}
using System;
public class MethodeGenerique
{
public static bool copieInsert(T elem, int index, T[] src, T[] cible)
{
if(cible.Lengt
|