In principal, despre .NET, VB6. C#,VB.NET, ASP.NET Apoi despre programare si multe alte chestii ... de programare.

Subscribe RSS   Mini tools List

marți, august 16, 2005

override - new si virtual
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Iata clasa promisa :



   1:  using System;


   2:   

   3:  namespace Override_New

   4:  {

   5:      class clsBase


   6:      {

   7:          public virtual void Virtual_Override()

   8:          {


   9:              Console.WriteLine("Virtual_Override - Base");

  10:          }

  11:          public virtual void Virtual_New()


  12:          {

  13:              Console.WriteLine("Virtual_New- Base");

  14:          }


  15:          public virtual void Virtual_Not_New_Not_Override()

  16:          {

  17:              Console.WriteLine("Virtual_Not_New_Not_Override- Base");


  18:   

  19:          }

  20:          public void Not_Virtual_Not_New()


  21:          {

  22:              Console.WriteLine("Not_Virtual_Not_New- Base");

  23:          }


  24:          public void Not_Virtual_New()

  25:          {

  26:              Console.WriteLine("Not_Virtual_Not_New- Base");


  27:          }

  28:      }

  29:      class clsDerived:clsBase


  30:      {

  31:          public override void Virtual_Override()

  32:          {


  33:              Console.WriteLine("Virtual_Override - Derived");

  34:          }

  35:          public new void Virtual_New()


  36:          {

  37:              Console.WriteLine("Virtual_New - Derived");

  38:          }


  39:          public void Virtual_Not_New_Not_Override()

  40:          {

  41:              Console.WriteLine("Virtual_Not_New_Not_Override- Derived");


  42:   

  43:          }

  44:   

  45:          public void Not_Virtual_Not_New()


  46:          {

  47:              Console.WriteLine("Not_Virtual_Not_New- Derived");

  48:          }


  49:          public new void  Not_Virtual_New()

  50:          {

  51:              Console.WriteLine("Not_Virtual_Not_New- Derived");


  52:          }

  53:      }

  54:   

  55:   

  56:   


  57:      class clsTest

  58:      {

  59:          /// <summary>


  60:          /// Demonstrate the various options 

  61:          /// for override / new / virtual

  62:          /// </summary>

  63:          [STAThread]


  64:          static void Main(string[] args)

  65:          {

  66:              clsBase b=new clsDerived();


  67:              b.Virtual_New();

  68:              b.Virtual_Override();

  69:              b.Virtual_Not_New_Not_Override();

  70:              b.Not_Virtual_New();


  71:              b.Not_Virtual_Not_New();

  72:              Console.ReadLine();

  73:   

  74:          }


  75:      }

  76:  }




Rezultatul :
TOATE DAU BASE- - cu exceptia celei care este virtuale si suprascrisa EXPLICIT cu override . Numai aceea da Derived ...

Interesant ...

 
Acest blog s-a mutat la http://www.serviciipeweb.ro/iafblog/