private
, public
y protected
indican quién puede acceder a los miembros de una clase. privado significa que nadie fuera de la clase puede verlo. público significa que todos pueden verlo. protected es como private, pero las subclases pueden acceder a él.
class Data
{
private int counter; // only accessible to class functions
protected int id; // accessible to class and subclass functions
public string name; // accessible from all code
}
abstract
significa que esta no es una clase acabado - que está destinado a ser utilizado como una base para subclases. A menudo hay funciones virtuales en su definición, funciones destinadas a ser "completadas" por una subclase.
abstract class Window
{
// cannot create objects of this class directly
// need to create sub class
}
static
en la definición de clase significa que sólo hay una copia global. Más o menos revierte la clase a un módulo antiguo. static
contra un miembro indica que es un miembro global dentro de la clase, no hay una versión diferente para cada objeto que hagas de esa clase.
static class Configuration
{
// only one instance of the object
}
class Data
{
private static int counter; // all Data objects access this one counter
private int id; // each Data object has a different id
}
sealed
previene la creación de subclases; también se puede aplicar a funciones individuales para evitar que se anulen en una subclase.
sealed class TelephoneNumber
{
// cannot create subclass of TelephoneNumber
}
class Address
{
public sealed string FormatAddress()
{
// this function cannot be overridden on a subclass
}
}
necesita leer el Principio C# 2005/2008. No podemos explicarle toda la enciclopedia de C#. –
Creo que ahora debería considerar algunas pautas sobre hacer preguntas, no podemos enseñarle a nadie "cómo programar" aquí o explicar lo que ya existe en MSDN o tutoriales de ayuda. –
Le sugiero que lea un poco sobre el polimorfismo @ http://msdn.microsoft.com/en-us/library/ms173152%28v=VS.80%29.aspx por ejemplo – KroaX