Herencia: segun wikipedia, En programación, mecanismo que permite derivar características de una clase a otra y así extender sus funcionalidades. Uno de sus funciones más importantes es proveer polimorfismo. |
En la Clase DerivedException es hija , pues hereda de System.ApplicationException la Herencia en C# la representamos mediante el operador":" |
| class DerivedException : System.ApplicationException { public override string Message { get { return "Ha Ocurrido una Excepción"; } } } | y tambien sobrecarga o "overrride" sobreescribe el metodo ya existente en la clase padre ApplicationException , retornando una cadena. Probamos la Excepcion: | try { //Lanzamos la Excepcion throw new DerivedException(); } //capturamos la Excepcion catch (DerivedException ex) { Console.WriteLine("Fuente: {0}, Error: {1}", ex.Source, ex.Message); } | Interfaces: Las Interfaces definen un conjunto de Miembros y Metodos comunes a implementar por clases que las implementan. | class MiClase : IDisposable { MiClase() { } } | | Class | Descripción | | IComparable | Define un método de comparación generalizado, implementado por un tipo de valor o clase para crear un método de comparación específico del tipo. | | IDisposable | Define un método para liberar los recursos no administrados asignados. Ejm: Cuando Cerramos una cadena de Conecion, Liberamos los Recursos consumidos por la Conexion. | | IConvertible | Define métodos que convierten el valor de la referencia o tipo de valor de implementación en un tipo de Common Language Runtime con un valor equivalente. | | IClonable | Admite la clonación, que crea una nueva instancia de una clase con el mismo valor que una instancia existente. | | IEquatable | Define un método generalizado, que implementa una clase o tipo de valor con el fin de crear un método específico del tipo para determinar la igualdad de instancias. | | IFormattable | Proporciona funcionalidad para dar formato al valor de un objeto en una representación de cadena | |
|
| class Mensaje : IMensaje { #region Miembros de IMensaje public bool Enviar() { throw new Exception("The method or operation is not implemented."); } string IMensaje.Mensaje { get { throw new Exception("The method or operation is not implemented."); } set { throw new Exception("The method or operation is not implemented."); } } public string Direccion { get { throw new Exception("The method or operation is not implemented."); } set { throw new Exception("The method or operation is not implemented."); } } #endregion } interface IMensaje { bool Enviar(); string Mensaje { get; set; } string Direccion { set; get; } } | |
Clases y Metodos Parciales Es posible dividir la definición de una clase, estructura, interfaz o método en dos o más archivos de código fuente. Cada archivo de código fuente contiene una sección de la definición de tipos o métodos, y todas las partes se combinan cuando se compila la aplicación. class Container { partial class Nested { void Test() { } } partial class Nested { void Test2() { } } } | En este caso podemos ver que tenemos dos clases con mi nismo nombre dentro de la clase Container |
Generics | class Obj { public Object t; public Object u; public Obj(Object _t, Object _u){ t = _t; u = _u; } } class Gen<T, U> { public T t; public U u; public Gen(T _t, U _u) { t = _t; u = _u; } } | en este post esta basado en Generics |
Eventos: Una definición de Evento: es una mensaje a un objeto en respuesta a una acción , tenemos los eventos mas conocidos los que ocurren sobre los objetos tanto win como web , OnClick, OnPress , OnOver , etc. |
Delegados: Los delegados son un tipo que representa a una función con una determinada declaración, segun sigamos con el Manual veremos mas acerca de delegados. Vamos a analizar esta definición poco a poco, ya que dice mucho en muy pocas palabras -
Los delegados son un TIPO. -
Los delegados representan a una función. -
La función debe tener una determinada declaración |
Atributos: Para nuestra Clase AssemblyInfo.cs | // C# - AssemblyInfo.cs [assembly: AssemblyTitle("ch01cs")] [assembly: AssemblyDescription("Chapter 1 Samples")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Microsoft Learning")] [assembly: AssemblyProduct("ch01cs")] [assembly: AssemblyCopyright("Copyright © 2006")] [assembly: AssemblyTrademark("")] *************************************************************** // C# [Serializable] class ShoppingCartItem { } | Aqui en este Atributo Indicamos que la clase ShoopingCartItem es "Serializable" |
Bueno, continuaremos mas adelante Muchas Gracias. Jose Fabricio Rojas |
0 post:
Publicar un comentario en la entrada