|
Exemple 12-14 extrait du chapitre
Héritage/dérivation polymorphisme et abstraction
Exemple 12-13< > Exemple 12-15
Cet exemple peut être compilé avec la ligne de commande: csc.exe /target:library Exemple_12_14.cs Erreurs: 0 Avertissements: 0 Remarque:
Exemple_12_14.cs
abstract class FooBase {
protected int valA = 0;
public virtual int Prop1 {
get { return valA; }
set { valA = value; }
}
public virtual int Prop2 {
get { return 43; }
}
public abstract int Prop3 {
get;
set;
}
}
class FooDeriv : FooBase {
private int valB = 0;
public override int Prop1 {
get { return base.Prop1 * 2; }
set { base.Prop1 = value * 2; }
}
public override sealed int Prop2 {
get { return valA > valB ? valA : valB; }
}
public override int Prop3 {
get { return valA + valB; }
set { valA = value - valB; }
}
}
Copyright Patrick Smacchia 2006 2007
|