10 sintaxis oo
Upcoming SlideShare
Loading in...5
×
 

10 sintaxis oo

on

  • 744 views

 

Statistics

Views

Total Views
744
Views on SlideShare
744
Embed Views
0

Actions

Likes
0
Downloads
6
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Las propiedades permiten implementar el encapsulamiento, impidiendo el acceso directo a los atributos de una clase y proporcionando un mecanismo para poder obtener y asignar sus valores. Nótese que como VB.NET no distingue entre mayúsculas y minúsculas no es posible utilizar para el miembro de la clase el mismo nombre que para la Propiedad. Sin embargo, es importante que ambos tengan nombres significativos para la lógica de la aplicación. No se recomienda el agregado de prefijos o sufijos a los nombres.
  • Module 8: Inheriting from Classes and Implementing Interfaces Course 10266A
  • Module 8: Inheriting from Classes and Implementing Interfaces Course 10266A
  • Module 8: Inheriting from Classes and Implementing Interfaces Course 10266A
  • Dos palabras clave que afectan la “habilidad” de heredar desde una clase base.

10 sintaxis oo 10 sintaxis oo Presentation Transcript

  • Módulo I- Introducción a la Programación enla Plataforma .Net con C#
  • TEMARIOCAPITULO IV.- INTRODUCCIÓN A LAPROGRAMACIÓN ORIENTADA AOBJECTOS  La programación Orientada a Objetos en C#
  • INTRODUCCIÓNDefinición de una Clase
  • Ejemplo Definición Clase
  • Declaración y Instanciación deun Objeto: Declaración de un Objeto:  CuentaBancaria ObjCuentaBancaria Instanciación de un Objecto:  CuentaBancaria ObjCuentaBancaria = new CuentaBancaria();
  • Constructores Constructor: métodos dentro de la clase que son llamados automáticamente cuando se crea una instancia de dicha clase. En C# tienen el mismo nombre de la claseclass CtaCte{ public CtaCte(){...} //Const. por default public CtaCte(int i){...} //Const. con un parámetro}
  • Miembros de una Clase Campos: Un campo es una característica de un objeto, que ayuda a definir su estructura y permite diferenciarlo de otros objetos Sintaxis general: Ejemplo:
  • Miembros de una Clase Propiedad:Una propiedad o atributo es un Propiedad: contenedor de un tipo de datos asociado a un objeto. Sintaxis general: Ejemplo:
  • Miembros de una Clase Método:Es la implementación de un Método: algoritmo asociado a un objeto Ejemplo:
  • Métodos Métodos: acciones que un objeto puede llevar a cabo. En C# todo método es una funciónpublic void HacerDeposito(int importe) //No devuelve valor{}public int ObtenerInventario(int codArticulo) //Devuelve un entero{}
  • Sobrecarga de Métodos Sobrecarga: varios métodos con el mismo nombre pero diferente “firma”.public void HacerDeposito(int importe){}public void HacerDeposito(int importe, bool acreditar){}
  • Métodos estáticos Miembros que no requieren de una instancia para ser invocados. Se los llama métodos “de clase”public static void HacerDeposito(int importe){}
  • Propiedades Propiedad: característica o atributo de un objeto class CtaCte { int balance; public int Balance { get { return balance; } set { balance = value; } } } CtaCte cc = new CtaCte(); cc.Balance = 100; //Asignación Mostrar(cc.Balance); //Obtención
  • Sobrescribiendo y ocultado métodos class Employee { protected virtual void Sobrescribiendo: Remplazando o DoWork() extendiendo funcionalidad de la clase { ... } } padre. class Manager : Employee { protected overrideclass Employee void{ DoWork() protected void { ... }DoWork() } { ... }}class Manager : Employee  Ocultado: Remplazando funcionalidad en la{ public new void clase padre con nuevo comportamiento.DoWork() { ... } (posiblemente un error)}
  • Invocando métodos y constructores de la clasebase class Employee Uso de base { protected virtual voidclass Employee DoWork(){ { ... } protected string }empName; public Employee(string class Manager : Employeename) { { this.empName = name; protected override void}} DoWork() {class Manager : Employee ...{ base.DoWork(); protected string }empGrade; } public Manager(stringname, stringgrade) Constructores Automáticamente se llama el : base(name) { constructor por defecto a menos que se this.empGrade =grade; especifique. }}
  • Asignando referencias en una jerarquía declases C# no permite asignar una referencia a una Manager myManager = new Manager(…); variable de un tipo de dato a una variable de  ManualWorker myWorker = myManager; otro tipo de dato. Manager myManager = new … pero se puede asignar una referencia sobre Manager(…);  Employee myEmployee = un tipo mayor en la jerarquía. myManager; Se puede utilizar el operador is para asignar Manager myManagerAgain = una referencia a una variable de menor  myEmployee as Manager; jerarquía.
  • Ámbitos de los Miembros deuna Clase Private:Define el miembro de la clase para uso privado. Ejemplo:
  • Ámbitos de los Miembros deuna Clase Protected: Los elementos declarados como protegidos sólo estarán accesibles, además de en la propia clase, por cualquier clase derivada. Ejemplo:
  • Ámbitos de los Miembros deuna Clase Internal: Cuando declaramos un miembro con este modificador, solo podremos acceder a él desde la propia clase o desde cualquier código que se encuentre en el mismo ensamblado. Ejemplo:
  • Ámbitos de los Miembros deuna Clase Protected Internal:Es una mezcla de Protected y Internal, es decir solo accesible desde las clases derivadas o desde el mismo proyecto. Ejemplo:
  • Ámbitos de los Miembros deuna Clase Public: Este modificador de ámbito nos permite exponer públicamente cualquier miembro de la clase, de forma que no haya restricciones para acceder a él. Ejemplo:
  • Pilares Programación OO Abstracción:
  • Pilares Programación OO Encapsulación. Ej: El siguiente es un ejemplo claro de encapsulación. La propiedad CodigoCliente tiene una validación que no permite que sólo escribir en el campo _CodigoCliente si el nuevo valor es mayor que cero
  • Pilares Programación OO Herencia. Sintaxis:Ejemplo:
  • Pilares Programación OOpublic sealed class Cuenta{//No se puede heredar de esta clase “sellada”}public abstract class Cuenta{//No se pueden crear instancias de esta clase, sólo//de sus derivadas}
  • PolimorfismoEjemplo:
  • InterfacesEjemplo: