introducción a la programación orientada a objetos en c# programa microsoft dce estrella 0
TRANSCRIPT
![Page 1: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/1.jpg)
Introducción a la Introducción a la Programación Orientada a Programación Orientada a
Objetos en C#Objetos en C#
Programa Microsoft Programa Microsoft DCEDCE
Programa Microsoft Programa Microsoft DCEDCE
Estrella 0
![Page 2: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/2.jpg)
ObjetivoObjetivo
Mostrar cómo aplicar los conceptos Mostrar cómo aplicar los conceptos fundamentales de programación fundamentales de programación orientada a objetos utilizando el orientada a objetos utilizando el lenguaje Microsoft Visual C#.NETlenguaje Microsoft Visual C#.NET
![Page 3: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/3.jpg)
PrerrequisitosPrerrequisitos
Poseer los conocimientos Poseer los conocimientos proporcionados en los siguientes proporcionados en los siguientes módulos de la Estrella 0:módulos de la Estrella 0: Fundamentos de ProgramaciónFundamentos de Programación Introducción a la Orientación a ObjetosIntroducción a la Orientación a Objetos
![Page 4: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/4.jpg)
Temas a TratarTemas a Tratar
Introducción a C# Introducción a C# SintaxisSintaxis Temas GeneralesTemas Generales Definición e inicialización de variablesDefinición e inicialización de variables OperadoresOperadores Estructuras de ControlEstructuras de Control Clases y ObjetosClases y Objetos
![Page 5: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/5.jpg)
Visual C#.NETVisual C#.NET
Creado especialmente para .NETCreado especialmente para .NETEstándar ECMA (2002)Estándar ECMA (2002)Orientado a Objetos y ComponentesOrientado a Objetos y ComponentesSintaxis derivada de C, C++, Delphi Sintaxis derivada de C, C++, Delphi y Javay Java
![Page 6: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/6.jpg)
CompiladorCompiladorCompilador de Línea de Comandos C#Compilador de Línea de Comandos C# Cumple con la especificación del CLSCumple con la especificación del CLS <Win>\Microsoft.NET\Framework\<Win>\Microsoft.NET\Framework\
<version>\csc.exe<version>\csc.exe Csc /out:XX /target:YY “Archivo1.cs” Csc /out:XX /target:YY “Archivo1.cs”
“Archivo2.cs” “Archivo2.cs”
![Page 7: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/7.jpg)
Temas a TratarTemas a Tratar
Introducción a C# Introducción a C# SintaxisSintaxis Temas GeneralesTemas Generales Definición e inicialización de variablesDefinición e inicialización de variables OperadoresOperadores Estructuras de ControlEstructuras de Control Clases y ObjetosClases y Objetos
![Page 8: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/8.jpg)
C# - Terminación de líneaC# - Terminación de línea
C#: la línea finaliza con un “ ; ”C#: la línea finaliza con un “ ; ”
//Una linea con mas de un renglonstring nombre = primerNombre + apellido; //El punto y coma indica FINAL de linea
![Page 9: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/9.jpg)
C# - Declaración de BloquesC# - Declaración de Bloques
En C# los bloques se declaran entre llavesEn C# los bloques se declaran entre llavesclass MainClass{
public static void Main(string[] args) {Console.WriteLine("Hello World!");
}}
![Page 10: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/10.jpg)
C# - ComentariosC# - ComentariosC# soporta tres tipos de comentariosC# soporta tres tipos de comentarios
string nombre = “Juan”; // Comentario de una sola línea /* Comentario con mas de una línea*/
/// <summary>/// Documentación XML que puede ser consumida por otras /// herramientas para mostrar ayuda dinámica o generar /// documentación en varios formatos/// </summary>public class Matematica { /// <summary> /// Calcula la suma de dos números enteros /// </summary> /// <param name="x">El primer operando de la suma</param> /// <param name="y">El segundo operando de la suma</param> /// <returns> La suma entera de ambos operandos</returns> public int Sumar (int x, int y) {return x + y;}}
![Page 11: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/11.jpg)
C# - Case SensitivityC# - Case Sensitivity
C# distingue entre mayúsuclas y minúsculasC# distingue entre mayúsuclas y minúsculas
system.console.writeline(“HOLA”); INCORRECTO
System.Console.WriteLine(“HOLA”); CORRECTO
![Page 12: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/12.jpg)
Temas a TratarTemas a Tratar
Introducción a C#Introducción a C#SintaxisSintaxis Temas GeneralesTemas Generales Definición e inicialización de variablesDefinición e inicialización de variables OperadoresOperadores Estructuras de ControlEstructuras de Control Clases y ObjetosClases y Objetos
![Page 13: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/13.jpg)
Tipos de DatosTipos de Datos
Categoría Clase Descripción C# Alias
Enteros Byte Un entero sin signo (8-bit) byte
SByte Un entero con signo (8-bit) sbyte
Int16 Un entero con signo (16-bit) short
Int32 Un entero con signo (32-bit) int
Int64 Un entero con signo (64-bit) long
Punto Flotante Single Un número de punto flotante de simple precisión (32-bit) float
Double Un número de punto flotante de doble precisión (64-bit) double
Decimal Un número decimal de 96-bit decimal
Lógicos Boolean Un valor booleano (true o false) bool
Otros Char Un caracter Unicode (16-bit) char
Object La raíz de la jerarquía de objetos object
StringUna cadena de caracteres unicode inmutable y de tamaño fijo string
![Page 14: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/14.jpg)
C# - Alcance de miembrosC# - Alcance de miembros
MiembroMiembro: se refiere a los campos, propiedades, : se refiere a los campos, propiedades, métodos, eventos, clases anidadas, etc.métodos, eventos, clases anidadas, etc.
C#:C#: todo miembro es declarado como todo miembro es declarado como PRIVATEPRIVATE por defaultpor default
Modificadores de acceso disponibles:Modificadores de acceso disponibles:
protected internalprotectedinternalprivatepublic
C#
![Page 15: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/15.jpg)
C# - Declaración de VariablesC# - Declaración de Variables
C#: el tipo de dato precede al identificador C#: el tipo de dato precede al identificador (nombre)(nombre)
int x;decimal y;rectangle z;Cliente cli;
![Page 16: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/16.jpg)
C# - Inicialización de VariablesC# - Inicialización de Variables
C#:C#: toda variable debe ser inicializada toda variable debe ser inicializada EXPLICITAMENTE antes de ser usadaEXPLICITAMENTE antes de ser usada
int tempBalance; //variable local//ERROR: tempBalance NO ha sido inicializadaSystem.Console.WriteLine(tempBalance);
![Page 17: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/17.jpg)
C# - Conversiones de TiposC# - Conversiones de Tipos
C# no permite conversiones implícitas de tiposC# no permite conversiones implícitas de tipos
Si falla el cast se devuelve null o InvalidCastExceptionSi falla el cast se devuelve null o InvalidCastException
Cuenta cta = new CtaCte();CtaCte cc = cta; //Error: puede que cta no sea una CtaCteCtaCte cc = (CtaCte)cta; //Conversion explicita “CASTING”CtaCte cc = cta as CtaCte; //Usando el operador “as”
if (cta is CtaCte) ... //Comp. con el operador “is”
![Page 18: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/18.jpg)
C# - ArreglosC# - ArreglosC# utiliza corchetes [ ] para definición de arraysC# utiliza corchetes [ ] para definición de arrays
string[] telefonos; //Definicion de un Arreglo de stringstelefonos = new string[3]; //De 3 elementostelefonos[0] = “1245”; //Seteo del 1er elemento del arreglo
//Definicion y asignacion de una veztelefonos = new string[] {“1”,“2”,“3”};
![Page 19: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/19.jpg)
Temas a TratarTemas a Tratar
Introducción a C#Introducción a C#SintaxisSintaxis Temas GeneralesTemas Generales Definición e inicialización de variablesDefinición e inicialización de variables OperadoresOperadores Estructuras de ControlEstructuras de Control Clases y ObjetosClases y Objetos
![Page 20: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/20.jpg)
C# - OperadoresC# - Operadores
Descripción C#
Asignación =
Adición +
Sustracción -
Multiplicación *
División /
Negación !
Módulo (Parte entera de la división) %
Mayor >
Menor <
Mayor o Igual >=
Menor o Igual <=
![Page 21: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/21.jpg)
C# - Operadores LógicosC# - Operadores Lógicos
Distinto!=Igual ==Negacion logica!Operador logico OllOperador logico Y&&
OperadorC#
Todas las evaluaciones se hacen por Todas las evaluaciones se hacen por “cortocircuito”“cortocircuito”
//Si Hacer1() es True, entonces //Si Hacer1() es False, entonces//NO se evalua Hacer2() //NO se evalua Hacer2()if (Hacer1() || Hacer2()) if (Hacer1() && Hacer2()){ {} }
![Page 22: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/22.jpg)
Temas a TratarTemas a Tratar
Introducción a C#Introducción a C#SintaxisSintaxis Temas GeneralesTemas Generales Definición e inicialización de variablesDefinición e inicialización de variables OperadoresOperadores Estructuras de ControlEstructuras de Control Clases y ObjetosClases y Objetos
![Page 23: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/23.jpg)
if (x > 10) if (x < 10) if (x < 10) if (x < 10) HacerAlgo(); { { { Hacer1(); Hacer1(); Hacer1(); Hacer2(); } } } else else if (x > 20) { { Hacer2(); Hacer2(); } } else { Hacer3(); }
C# - Sentencias condicionalesC# - Sentencias condicionalesC#: sentencia if con varios formatosC#: sentencia if con varios formatos
![Page 24: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/24.jpg)
int a = 0;switch(a) {
case 1:{//CODIGO 1 break;}case 2: {//CODIGO 2 break;}default:{//CODIGO DEFAULT break;}
}
C# - Sentencias condicionalesC# - Sentencias condicionalesC#: sentencia caseC#: sentencia case
![Page 25: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/25.jpg)
C# - Sentencia forC# - Sentencia forC#: la sentencia for consta de tres partesC#: la sentencia for consta de tres partes
//Partes: declaración, prueba, acciónfor (int i=1; i < 10; i++){}
![Page 26: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/26.jpg)
C# - Sentencia for/eachC# - Sentencia for/each
C#: usa la palabra foreachC#: usa la palabra foreach
string[] nombres = new string[5];foreach(string auxNombre in nombres){ //auxNombre es de SOLO LECTURA}
For/Each permite recorrer arreglos y coleccionesFor/Each permite recorrer arreglos y colecciones
![Page 27: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/27.jpg)
C# - Sentencia whileC# - Sentencia whileC#:C#:
bool condicion = true;while (condicion == true){
//En algún momento poner condicion = false}
![Page 28: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/28.jpg)
Temas a TratarTemas a Tratar
Introducción a C#Introducción a C#SintaxisSintaxis Temas GeneralesTemas Generales Definición e inicialización de variablesDefinición e inicialización de variables OperadoresOperadores Estructuras de ControlEstructuras de Control Clases y ObjetosClases y Objetos
![Page 29: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/29.jpg)
C# - ClasesC# - Clases
C#: las clases son declaradas mediante classC#: las clases son declaradas mediante class
//Definicion de la clase CuentaBancariaclass CuentaBancaria{
//Definicion de miembros}
![Page 30: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/30.jpg)
Sintaxis – Entry PointSintaxis – Entry Point
C#:C#:public class HolaMundo {
public static void Main(string[] args){//Punto de entrada de la aplicación
}}
![Page 31: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/31.jpg)
C# - MétodosC# - Métodos
En C# todo método es una funciónEn C# todo método es una función
public void HacerDeposito(int importe) //No devuelve valor especifico{}
public int ObtenerInventario(int codArticulo) //Devuelve un entero{}
Métodos: acciones que un objeto puede llevar a Métodos: acciones que un objeto puede llevar a cabo.cabo.
![Page 32: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/32.jpg)
C# - ConstructoresC# - Constructores
EnEn C# C# tienen el mismo nombre de la clasetienen el mismo nombre de la clase
class CtaCte{ public CtaCte(){...} //Const. por default public CtaCte(int i){...} //Const. con un parametro}
Constructor: métodos dentro de la clase que son Constructor: métodos dentro de la clase que son llamados automáticamente cuando se crea una llamados automáticamente cuando se crea una instancia de dicha clase.instancia de dicha clase.
![Page 33: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/33.jpg)
C# - InstanciasC# - Instancias
CtaCte cc = new CtaCte();//CtaCte Tipo de Objeto//cc nombe de objeto//new palabra reservada para la creacion de objetos//CtaCte() constructor por defecto de la clase CtaCte.}
Instancia: Es la creacion de un OBJETO a traves de Instancia: Es la creacion de un OBJETO a traves de una clase. métodos dentro de la clase. una clase. métodos dentro de la clase.
Las instancias llaman a los constructores por defecto Las instancias llaman a los constructores por defecto o con parametros.o con parametros.
![Page 34: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/34.jpg)
C# - Sobrecarga de MétodosC# - Sobrecarga de Métodos
C#C#
public void HacerDeposito(int importe) {}
public void HacerDeposito(int importe, bool acreditar){}
SobrecargaSobrecarga: : varios métodos con el mismo nombre varios métodos con el mismo nombre pero diferente “firma”.pero diferente “firma”.
![Page 35: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/35.jpg)
C# - Métodos estáticosC# - Métodos estáticos
C#C#
public static void HacerDeposito(int importe) {
}
Miembros que no requieren de una instancia para Miembros que no requieren de una instancia para ser invocados. Se los llama métodos “de clase”ser invocados. Se los llama métodos “de clase”
![Page 36: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/36.jpg)
C# - PropiedadesC# - PropiedadesPropiedad: característica o atributo de un objetoPropiedad: característica o atributo de un objeto
C#C#
class CtaCte{ int balance; public int Balance { get { return balance; } set { balance = value; } }}
CtaCte cc = new CtaCte();cc.Balance = 100; //AsignaciónMostrar(cc.Balance); //Obtención
![Page 37: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/37.jpg)
C# - HerenciaC# - Herencia
En C# la herencia se define:En C# la herencia se define:
class Cuenta //Clase Base{ }class CtaCte : Cuenta //Clase Derivada{ }
En .NET solo se permite Herencia Simple
![Page 38: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/38.jpg)
C# - Herencia (Cont.)C# - Herencia (Cont.)
En C#En C#
public 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 }
![Page 39: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/39.jpg)
C# - NamespacesC# - NamespacesC#C#
namespace BancoARG{ namespace Gestion { public class CtaCte { } public class CajaAhorro { } }}
//Referencia “full”BancoARG.Gestion.CtaCte;BancoARG.Gestion.CajaAhorro;
//Referencia “corta”using BancoARG.Gestion;CtaCte cc = new CtaCte();CajaAhorro ca = new CajaAhorro();
![Page 40: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/40.jpg)
C# - Admin. De Excepciones C# - Admin. De Excepciones
C#: usa las palabras try/catch/finallyC#: usa las palabras try/catch/finally
try{ int resultado = x/y;}catch(DivideByZeroException e){ //Error division por cero}catch{ //Otro error}finally{ //Siempre pasa por aca}
Excepción: condición anómala de funcionamiento de Excepción: condición anómala de funcionamiento de una aplicaciónuna aplicación
![Page 41: Introducción a la Programación Orientada a Objetos en C# Programa Microsoft DCE Estrella 0](https://reader030.vdocuments.mx/reader030/viewer/2022020308/5665b4ee1a28abb57c94e1d5/html5/thumbnails/41.jpg)
© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or
implied, in this summary.