Programación Orientada a Objetos (C# y Visual Basic)

Please download to get full document.

View again

All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
 16
 
  Aspectos básicos de programación con C# y Visual Basic .Net
Related documents
Share
Transcript
  Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto srcinal. Más información. Programación orientada a objetos (C# y Visual Basic) Todos los lenguajes administrados de .NET Framework, como Visual Basic y C#, proporcionan plena compatibilidad con la programación orientada a objetos, incluidos la encapsulació herencia y el polimorfismo.La encapsulación  significa que un grupo de propiedades, métodos y otros miembros relacionados se tratan como si de una sola unidad u objeto se tratase. Herencia  describe la posibilidad de crear nuevas clases basadas en una clase existente. Polimorfismo  significa que puede tener múltiples clases que se pueden utilizar de forma intercambiable, si bien cada clase implementa las mismas propiedades o los mismos métodos maneras diferentes.En esta sección se describen los conceptos siguientes:Clases y objetosMiembros de la clasePropiedades y camposMétodosConstructoresDestructoresEventosClases anidadasModificadores y niveles de accesoCreación de instancias de las clasesClases y miembros estáticos (compartidos)Tipos anónimosHerenciaReemplazar miembrosInterfacesGenéricosDelegados Clases y objetos Los términos clase  y objeto  se usan a veces indistintamente pero, en realidad, las clases describen el tipo  de los objetos, mientras que los objetos son instancias  de clases que se pueusar. Así, la acción de crear un objeto se denomina creación de instancias . Con la analogía de plano, una clase es un plano y un objeto es un edificio construido a partir de ese planoPara definir una clase:Tanto Visual Basic como C# también proporcionan una versión ligera de las clases denominadas estructuras , que resultan útiles cuando es necesario crear una matriz grande de obj no se desea usar demasiada memoria para ello.Para definir una estructura:Para obtener más información, vea:Visual BasicInstrucción Class (Visual Basic)Structure (Instrucción) Visual Studio 2013 class SampleClass{}struct SampleStruct{} C#C#  C#class (Referencia de C#)struct (Referencia de C#) Miembros de clase Cada clase puede tener distintos miembros de clase , entre los que se incluyen las propiedades que describen los datos de clase, los métodos que definen el comportamiento de la c los eventos que proporcionan comunicación entre distintos objetos y clases. Propiedades y campos Los campos y propiedades representan información que contiene un objeto. Los campos se parecen a las variables ya que se pueden leer y establecer directamente.Para definir un campo:Las propiedades tienen procedimientos get y set, que proporcionan un mayor control sobre la forma en que se establecen o devuelven los valores.Tanto C# como Visual Basic permiten crear un campo privado para almacenar el valor de propiedad o bien usar las denominadas propiedades de implementación automática que ceste campo en segundo plano automáticamente y proporcionan la lógica básica para los procedimientos de propiedad.Para definir una propiedad implementada automáticamente:Si necesita realizar algunas operaciones adicionales para leer y escribir el valor de propiedad, defina un campo para almacenar el valor de propiedad y proporcione la lógica básica almacenarlo y recuperar lo:La mayoría de las propiedades tienen métodos o procedimientos para configurar y obtener el valor de la propiedad. Sin embargo, se pueden crear propiedades de solo lectura o soescritura para restringir su modificación o lectura. En Visual Basic se pueden utilizar las palabras clave ReadOnly  y WriteOnly  palabras clave. En C#, se puede omitir el método depropiedad get  o set . Sin embargo, tanto en Visual Basic como en C#, las propiedades implementadas automáticamente no pueden ser de solo lectura o de solo escritura.Para obtener más información, vea:Visual BasicProperty (Instrucción)Get (Instrucción)Instrucción Set (Visual Basic)ReadOnly (Visual Basic)WriteOnly (Visual Basic)C#get (Referencia de C#)set (Referencia de C#) Métodos Un método es una acción que puede realizar un objeto. Nota En Visual Basic hay dos formas de crear un método: se usa la instrucción Sub  si el método no devuelve un valor o bien se usa la instrucción Function  si el método devuelve un valPara definir un método de una clase: Class SampleClass{ public string sampleField; }class SampleClass{ public int SampleProperty { get; set; } }class SampleClass{ private int _sample;  public int Sample  { // Return the value stored in a field. get { return _sample; }  // Store the value in the field. set { _sample = value; } }} C#C#C#  Una clase puede tener varias implementaciones o sobrecargas  del mismo método que se diferencian en el número de parámetros o de tipos de parámetro.Para sobrecargar un método:En la mayoría de los casos, un método se declara dentro de una definición de clase. Sin embargo, tanto Visual Basic como C# también admiten los métodos de extensión , que permiagregar métodos a una clase existente fuera de la definición de la clase en sí.Para obtener más información, vea:Visual BasicFunction (Instrucción, Visual Basic)Sub (Instrucción, Visual Basic)Overloads (Visual Basic)Métodos de extensión (Visual Basic)C#Métodos (Guía de programación de C#)Métodos de extensión (Guía de programación de C#) Constructores Los constructores son métodos de clase que se ejecutan automáticamente cuando se crea un objeto de un tipo determinado. Normalmente, los constructores inicializan los miembrde datos del nuevo objeto. Un constructor se puede ejecutar sólo una vez cuando se crea una clase. Además, el código del constructor siempre se ejecuta antes que cualquier otrocódigo en una clase. Sin embargo, puede crear varias sobrecargas del constructor de la misma forma que para cualquier otro método.Para definir un constructor para una clase:Para obtener más información, vea:Visual BasicSub NewDuración de los objetos: cómo se crean y destruyen (Visual Basic)C#Constructores (Guía de programación de C#) Destructores Los destructores se utilizan para destruir instancias de clases. En .NET Framework, el recolector de elementos no utilizados administra automáticamente la asignación y liberación dememoria para los objetos administrados en la aplicación. Sin embargo, puede que aún necesite destructores para limpiar recursos no administrados que crea la aplicación. Sólo puehaber un destructor para cada clase.Para obtener más información acerca de los destructores y la recolección de elementos no utilizados en .NET Framework, vea recolección de elementos no utilizados. Eventos Los eventos habilitan que una clase u objeto notifique a otras clases u objetos cuando se produce algo interesante . La clase que envía (o genera) el evento recibe el nombre de  publicador   y las clases que reciben (o controlan) el evento se denominan suscriptores . Para obtener más información sobre los eventos y la forma en que se generan y controlan, veaControlar y provocar eventos.Visual BasicPara declarar eventos, use Event (Instrucción).Para generar eventos, use RaiseEvent (Instrucción). class SampleClass{ public int sampleMethod(string sampleParam)  { // Insert code here }}public int sampleMethod(string sampleParam) {}; public int sampleMethod(int sampleParam) {} public class SampleClass { public SampleClass() { // Add code here }} C#C#C#  Para especificar controladores de eventos de forma declarativa, use la instrucción WithEvents (Visual Basic) y la cláusula Handles (Cláusula, Visual Basic). Para poder agregar, quitar y cambiar de forma dinámica el controlador de eventos asociado a un evento, use AddHandler (Instrucción) y RemoveHandler (Instrucción)  junto con AddressOf (Operador) (Visual Basic).C#Para declarar un evento en una clase, use la palabra clave event (Referencia de C#).Para generar un evento, invoque al delegado de eventos.Para suscribirse a un evento, use el operador += ; para anular la suscripción de un evento, use el operador -= . Clases anidadas Una clase definida dentro de otra se denomina anidada . De forma predeterminada, una clase anidada es privada.Para crear una instancia de la clase anidada, use el nombre de la clase contenedora seguido de un punto y seguido, a continuación, del nombre de la clase anidada: Modificadores y niveles de acceso Todas las clases y miembros de clase pueden especificar el nivel de acceso que proporcionan a otras clases mediante los modificadores de acceso .Están disponibles los siguientes modificadores de acceso: Modificador de VisualBasicModificador deC#Definición Public (Visual Basic)publicPuede obtener acceso al tipo o miembro cualquier otro código del mismo ensamblado o de otro ensamblado que hagareferencia a éste.Private (Visual Basic)privateSolamente puede obtener acceso al tipo o miembro el código de la misma clase.Protected (Visual Basic)protectedSolamente puede obtener acceso al tipo o miembro el código de la misma clase o de una clase derivada.Friend (Visual Basic)internalPuede obtener acceso al tipo o miembro cualquier código del mismo ensamblado, pero no de un ensamblado distinto. Protected Friendprotectedinternal Puede obtener acceso al tipo o miembro cualquier código del mismo ensamblado o cualquier clase derivada de otro ensamblPara obtener más información, vea Niveles de acceso en Visual Basic y Modificadores de acceso (Guía de programación de C#). Creación de instancias de las clases Para crear un objeto, debe crear una o varias instancias de una clase.Una vez creadas las instancias de una clase, puede asignar valores a las propiedades y los campos de la instancia, así como invocar métodos de clase.Para asignar valores a las propiedades durante el proceso de creación de instancias de una clase, use los inicializadores de objeto:Para obtener más información, vea:Visual Basic class Container{ class Nested { // Add code here. }}Container.Nested nestedInstance = new Container.Nested()SampleClass sampleObject = new SampleClass();// Set a property value.sampleObject.sampleProperty = Sample String ;// Call a method.sampleObject.sampleMethod();// Set a property value.SampleClass sampleObject = new SampleClass { FirstProperty = A , SecondProperty = B  }; C#C#C#C#C#
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks
SAVE OUR EARTH

We need your sign to support Project to invent "SMART AND CONTROLLABLE REFLECTIVE BALLOONS" to cover the Sun and Save Our Earth.

More details...

Sign Now!

We are very appreciated for your Prompt Action!

x