SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Microsoft

    Visual Studio .Net 2005



Introduccion Visual C#.Net
Introduccion a Visual C#.Net

   Sistemas de Tipos
   Clases y Estructuras
   Manejo de Excepciones
Introduccion a Visual C#.Net

    Sistemas de Tipos
      •   Tipos primitivos
      •   Variables y constantes
      •   Arrays (matrices)

    Clases y Estructuras
    Manejo de Excepciones
Tipos Primitivos

Tipos de datos definidos en .NET Framework y los alias utilizados en Visual C# 2005.
Variables y Constantes

Las constantes son valores que nunca cambian y pueden ser de dos tipos:
  0.1416; // constante literal
  const double iva = 0.12; //constante con nombre

En Visual C# 2005, en las variables en siempre se indican el tipo de datos que tendrá
  string saludo = “hola mundo”;
  int a, b, c;   //declaracion de multiples variables
  double x=0.10, y=0.20, z=0.30 ; //declaracion y asignacion de variables


Las cadenas de caracteres en C#, se definen indicando la cadena entre comillas dobles
  string s1 = "Hola, ";
  s1 = s1 + "mundo";

  // StringBuilder deberíamos usarla enconcatenaciones o uniones de cadenas
  StringBuilder sb = new StringBuilder();
  sb.Append("Hola, ");
  sb.Append("mundo");
Arrays y Matrices
Los arrays se definen indicando un par de corchetes en el tipo de datos
   int[ ] numeros; // un array se declara con el tipo de dato seguido de [ ]
   Numeros = new int[4]; //indica el numero de elementos que tendra el array

   int[ ] num2 = new int[3];

El índice inferior será cero y el índice superior será uno menos del número de elementos
  num2[0] = 3; //usamos los corchetes y la posición en la que queremos guardar
  num2[1] = 22;

Para recorrer los elementos de un array podemos hacerlo de las siguientes formas
  for (int i = 0; i < num2.Length; i++)
  {
       Console.WriteLine(num2[i]);
  }

  foreach(int i in num2)
  { Console.WriteLine(i); }
Arrays y Matrices
Declarar arrays e inicializarlos al mismo tiempo, aunque la sintaxis es un poco distinta,
ya que en esta ocasión debemos indicar varios valores después de definir el array
   string[ ] nombres = {"Pepe", "Juan", "Luisa"};

   string[,] nombres = { { "Juan", "Pepe" }, { "Ana", "Eva" } };
   // en este código tendríamos un array bidimensional con los siguientes valores:
   nombres[0,0]= Juan
   nombres[0,1]= Pepe
   nombres[1,0]= Ana
   nombres[1,1]= Eva

Cambiar el tamaño de un array en el que añadimos 5 elementos más
   int[ ] original = { 1, 2, 3, 4 };
   int[ ] copia = new int[original.Length]; // Copiamos el original en la copia
   original.CopyTo(copia, 0);
   original = new int[original.Length + 5];

   // Asignamos nuevamente lo copiado a partir del primer elemento
   copia.CopyTo(original, 0);
Introduccion a Visual C#.Net
 ∀   Sistemas de Tipos
 ∀   Clases
       •   Clases
       •   Definir una Clase
       •   Instanciar una Clase

     Manejo de Excepciones
Que es una Clase?

• Una clase es una descripción de un grupo de objetos con:
  – Propiedades en común (atributos)
  – Comportamiento similar (operaciones)
  – La misma forma de relacionarse con otros objetos
  – Una semántica en común (significan lo mismo)

• Una clase es una abstracción que:
  – Enfatiza las características relevantes
  – Suprime otras características (simplificación)

• Un objeto es una instancia de una clase
Ejemplo de Clase
  • Clase: Curso
  • Estado (Atributos)
     – Nombre
     – Ubicación
     – Días Ofrecidos
     – Horario de Inicio
     – Horario de Término

  • Comportamiento (Métodos)
     – Agregar un Alumno
     – Borrar un Alumno
     – Entregar un Listado del Curso
     – Determinar si está Completo
Definir una Clase
En Visual C# 2005, todo el código que queramos escribir, lo tendremos
que hacer en un fichero con la extensión .cs

Accesibilidad A los elementos de nuestro código podemos darle diferentes tipos.

public: Acceso no restringido.
public

protected: Acceso limitado a la clase contenedora o a tipos derivados de esta clase.
protected

internal: Acceso limitado al proyecto actual.
internal

protected internal: Acceso limitado al proyecto o a los tipos derivados de la clase
          internal

private: Acceso limitado al tipo contenedor.
private
                                                class Cliente
                                                {
                                                     private int CliCodigo;
                                                     public string Nombre;
                                                     public string Apellidos;
                                                }
Definir una Clase
En Visual C# 2005, todo el código que queramos escribir, lo tendremos que hacer en
un fichero con la extensión .cs, ademas un fichero C# puede contener varias clases
                  class Cliente
                  {
                       private int CliCodigo;
                       private string CliNombre;

                       public string Nombre
                       {
                         get
                         {
                            return CliNombre;
                         }
                         set
                         {
                            CliNombre = value;
                         }
                       }
                       public void Saludo()
                       {
                         Console.WriteLine("Hola mundo!!");
                         Console.ReadLine();
                       }
                  }
Instaciar una Clase

Con la clase ya definida disponemos de una especie de plantilla
para crear objetos en memoria


Declarar primero la variable y después instanciarla
 Cliente objCliente; //variable cli1 para acceder a una clase de tipo Cliente

 objCliente = new Cliente(); //referencia a objeto Cliente usando: new Cliente():



Declarar e instanciar en un solo paso es la otra forma de instanciar
una clase es decir haciéndolo al mismo tiempo que la declaramos
 Cliente objCliente = new Cliente();
Instaciar una Clase

Con la clase ya definida disponemos de una especie de plantilla
para crear objetos en memoria


Declarar primero la variable y después instanciarla
 Cliente objCliente; //variable cli1 para acceder a una clase de tipo Cliente

 objCliente = new Cliente(); //referencia a objeto Cliente usando: new Cliente():



Declarar e instanciar en un solo paso es la otra forma de instanciar
una clase es decir haciéndolo al mismo tiempo que la declaramos
 Cliente objCliente = new Cliente();
Introduccion a Visual C#.Net
 ∀   Sistemas de Tipos
 ∀   Clases
 ∀   Manejo de Excepciones
      • Try
      • Catch
Excepciones

Aplicaciones no estarán libres de errores lógicos.
Errores que se produzcan en tiempo de ejecución.
C# pone a nuestra disposición el manejo de excepciones

Las excepciones en C# las podemos controlar usando las
instrucciones: try / catch / finally

Bloque try
El código a usar será un código normal.
Se produce el error y se usará el bloque catch.

Bloque catch
Se produce una excepción y la capturamos en un bloque catch.
En el bloque catch se indica el tipo de excepción a capturar.
Try & Catch

Con la clase ya definida disponemos de una especie de plantilla
para crear objetos en memoria

 try
 {
   // código que queremos controlar
 }
 catch
 {
   // el código a ejecutar cuando se produzca cualquier error
 }

Bloque finally
Indicar instrucciones que queremos ejecutar, se produzca o no la excepción.
Nos aseguramos que siempre se ejecutará un código.
int i, j;
try
{
      Console.Write("Un numero ");
    i = Convert.ToInt32(Console.ReadLine());
    Console.Write("Otro numero ");
    j = Convert.ToInt32(Console.ReadLine());

  int r = i / j;

  Console.WriteLine("El resultado es: {0}", r);
}
catch (FormatException)
{
   Console.WriteLine("No es un número válido"); // Salimos de la función, pero se ejecutará el finally
   return;
}
catch (DivideByZeroException)
{
   Console.WriteLine("La división por cero no está permitida.");
}
catch (Exception ex)
{
     Console.WriteLine(ex.Message); // Captura del resto de excepciones
}
finally
{
     Console.WriteLine("Se acabó"); // Este código siempre se ejecutará
}

Weitere ähnliche Inhalte

Was ist angesagt?

Introducción a Swift
Introducción a SwiftIntroducción a Swift
Introducción a Swiftbetabeers
 
Polimorfismo ppt
Polimorfismo  pptPolimorfismo  ppt
Polimorfismo pptivanvillar7
 
Estructura basica de un programa
Estructura basica de un programaEstructura basica de un programa
Estructura basica de un programaRay-kun Olivera
 
polimorfismo
polimorfismopolimorfismo
polimorfismomiguel a
 
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...David Zapateria Besteiro
 
iNTRODUCCION AL LENGUAJE JAVA
iNTRODUCCION AL LENGUAJE  JAVAiNTRODUCCION AL LENGUAJE  JAVA
iNTRODUCCION AL LENGUAJE JAVAJesus Alex Haro
 
2.1 caracteristicas de lenguajes de programación
2.1 caracteristicas de lenguajes de programación2.1 caracteristicas de lenguajes de programación
2.1 caracteristicas de lenguajes de programaciónoviedospablo
 
Estructuras de Lenguaje .NET
Estructuras de Lenguaje .NETEstructuras de Lenguaje .NET
Estructuras de Lenguaje .NETbrobelo
 
02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcionalJuan Rodríguez
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...David Zapateria Besteiro
 
1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...
1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...
1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...Jose Emilio Labra Gayo
 

Was ist angesagt? (20)

Poo3 java-0910
Poo3 java-0910Poo3 java-0910
Poo3 java-0910
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Definición de clases en POO
Definición de clases en POODefinición de clases en POO
Definición de clases en POO
 
Introducción a Swift
Introducción a SwiftIntroducción a Swift
Introducción a Swift
 
Polimorfismo ppt
Polimorfismo  pptPolimorfismo  ppt
Polimorfismo ppt
 
Estructura basica de un programa
Estructura basica de un programaEstructura basica de un programa
Estructura basica de un programa
 
Prog oo con_java
Prog oo con_javaProg oo con_java
Prog oo con_java
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
 
polimorfismo
polimorfismopolimorfismo
polimorfismo
 
03 Oop
03   Oop03   Oop
03 Oop
 
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
 
iNTRODUCCION AL LENGUAJE JAVA
iNTRODUCCION AL LENGUAJE  JAVAiNTRODUCCION AL LENGUAJE  JAVA
iNTRODUCCION AL LENGUAJE JAVA
 
2.1 caracteristicas de lenguajes de programación
2.1 caracteristicas de lenguajes de programación2.1 caracteristicas de lenguajes de programación
2.1 caracteristicas de lenguajes de programación
 
Estructuras de Lenguaje .NET
Estructuras de Lenguaje .NETEstructuras de Lenguaje .NET
Estructuras de Lenguaje .NET
 
02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
 
Semana 6 Módulos Clases y Objetos
Semana 6   Módulos Clases y ObjetosSemana 6   Módulos Clases y Objetos
Semana 6 Módulos Clases y Objetos
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...
1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...
1 Introducción a los Lenguajes de Programación y a la Programación Orientada ...
 

Andere mochten auch

Regionales Wissensmanagement
Regionales WissensmanagementRegionales Wissensmanagement
Regionales Wissensmanagementlebenmitzukunft
 
Katalog Glasbeleuchtung Vision
Katalog Glasbeleuchtung VisionKatalog Glasbeleuchtung Vision
Katalog Glasbeleuchtung VisionTRENDLICHT
 
T_zukunfts raum_tirol_2007
T_zukunfts raum_tirol_2007T_zukunfts raum_tirol_2007
T_zukunfts raum_tirol_2007lebenmitzukunft
 
At aktionsplan nachhaltige_beschaffung_teil ii_2010
At aktionsplan nachhaltige_beschaffung_teil ii_2010At aktionsplan nachhaltige_beschaffung_teil ii_2010
At aktionsplan nachhaltige_beschaffung_teil ii_2010lebenmitzukunft
 
Działania na rzecz wzmacniania tożsamości regionalnej
Działania na rzecz wzmacniania tożsamości regionalnejDziałania na rzecz wzmacniania tożsamości regionalnej
Działania na rzecz wzmacniania tożsamości regionalnejJacek Tomaszewski
 
Präsentation planung einer verkaufsaktion
Präsentation planung einer verkaufsaktionPräsentation planung einer verkaufsaktion
Präsentation planung einer verkaufsaktionSebastian Roob
 
Prueba de certificación
Prueba de certificaciónPrueba de certificación
Prueba de certificaciónMajorick
 
Ferienbauernhof Köstner im Steigerwald - Frankens gemütliche Ecke
Ferienbauernhof Köstner im Steigerwald - Frankens gemütliche EckeFerienbauernhof Köstner im Steigerwald - Frankens gemütliche Ecke
Ferienbauernhof Köstner im Steigerwald - Frankens gemütliche EckeSocial Tourism Marketing
 
Musterpraxis einführungsvortrag
Musterpraxis   einführungsvortragMusterpraxis   einführungsvortrag
Musterpraxis einführungsvortragbrikarus
 
Manual de usuario menu system 1.0
Manual de usuario menu system 1.0Manual de usuario menu system 1.0
Manual de usuario menu system 1.0wesleyeche
 
Entorno de aprendizaje
Entorno de aprendizajeEntorno de aprendizaje
Entorno de aprendizajeAndrea Ortiz
 
Practica nº23 de flash
Practica nº23 de flashPractica nº23 de flash
Practica nº23 de flashRafael Carlos
 

Andere mochten auch (20)

Noticias espeleológicas 20111228
Noticias espeleológicas 20111228Noticias espeleológicas 20111228
Noticias espeleológicas 20111228
 
Regionales Wissensmanagement
Regionales WissensmanagementRegionales Wissensmanagement
Regionales Wissensmanagement
 
Katalog Glasbeleuchtung Vision
Katalog Glasbeleuchtung VisionKatalog Glasbeleuchtung Vision
Katalog Glasbeleuchtung Vision
 
T_zukunfts raum_tirol_2007
T_zukunfts raum_tirol_2007T_zukunfts raum_tirol_2007
T_zukunfts raum_tirol_2007
 
At aktionsplan nachhaltige_beschaffung_teil ii_2010
At aktionsplan nachhaltige_beschaffung_teil ii_2010At aktionsplan nachhaltige_beschaffung_teil ii_2010
At aktionsplan nachhaltige_beschaffung_teil ii_2010
 
Działania na rzecz wzmacniania tożsamości regionalnej
Działania na rzecz wzmacniania tożsamości regionalnejDziałania na rzecz wzmacniania tożsamości regionalnej
Działania na rzecz wzmacniania tożsamości regionalnej
 
Präsentation planung einer verkaufsaktion
Präsentation planung einer verkaufsaktionPräsentation planung einer verkaufsaktion
Präsentation planung einer verkaufsaktion
 
Prueba de certificación
Prueba de certificaciónPrueba de certificación
Prueba de certificación
 
Cenotes
CenotesCenotes
Cenotes
 
Adolf Bastian und Indonesien
Adolf Bastian und IndonesienAdolf Bastian und Indonesien
Adolf Bastian und Indonesien
 
Ferienbauernhof Köstner im Steigerwald - Frankens gemütliche Ecke
Ferienbauernhof Köstner im Steigerwald - Frankens gemütliche EckeFerienbauernhof Köstner im Steigerwald - Frankens gemütliche Ecke
Ferienbauernhof Köstner im Steigerwald - Frankens gemütliche Ecke
 
Hotel Riedel, Zittau
Hotel Riedel, ZittauHotel Riedel, Zittau
Hotel Riedel, Zittau
 
Kinzigtal Ferienwohnungen
Kinzigtal FerienwohnungenKinzigtal Ferienwohnungen
Kinzigtal Ferienwohnungen
 
Tipo de Redes
Tipo de RedesTipo de Redes
Tipo de Redes
 
sistemas
sistemassistemas
sistemas
 
Musterpraxis einführungsvortrag
Musterpraxis   einführungsvortragMusterpraxis   einführungsvortrag
Musterpraxis einführungsvortrag
 
Manual de usuario menu system 1.0
Manual de usuario menu system 1.0Manual de usuario menu system 1.0
Manual de usuario menu system 1.0
 
Entorno de aprendizaje
Entorno de aprendizajeEntorno de aprendizaje
Entorno de aprendizaje
 
Compu final
Compu finalCompu final
Compu final
 
Practica nº23 de flash
Practica nº23 de flashPractica nº23 de flash
Practica nº23 de flash
 

Ähnlich wie Visual C# Introducción

Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosJosé Antonio Sandoval Acosta
 
Programacion Orientada a Objetos - Unidad 2 clases y objetos
Programacion Orientada a Objetos - Unidad 2 clases y objetosProgramacion Orientada a Objetos - Unidad 2 clases y objetos
Programacion Orientada a Objetos - Unidad 2 clases y objetosJosé Antonio Sandoval Acosta
 
Programacion orientada a objetos 2
Programacion orientada a objetos 2Programacion orientada a objetos 2
Programacion orientada a objetos 2mellcv
 
Programación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prevProgramación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prevjtk1
 
Programación orientada a objetos con c++
Programación orientada a objetos con c++Programación orientada a objetos con c++
Programación orientada a objetos con c++Karime Hernández
 
Sesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesSesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesecodereck
 
El lenguaje C++ (1).ppt
El lenguaje C++ (1).pptEl lenguaje C++ (1).ppt
El lenguaje C++ (1).pptJOSECASHUUG
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02Krizztiina Pacheko
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje javaMargarita Romero
 
C# Nuevas características en C# 6
C# Nuevas características en C# 6C# Nuevas características en C# 6
C# Nuevas características en C# 6HARUN PEHLIVAN
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Sergio Sanchez
 

Ähnlich wie Visual C# Introducción (20)

Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
 
Programacion Orientada a Objetos - Unidad 2 clases y objetos
Programacion Orientada a Objetos - Unidad 2 clases y objetosProgramacion Orientada a Objetos - Unidad 2 clases y objetos
Programacion Orientada a Objetos - Unidad 2 clases y objetos
 
manual de C#
manual de C#manual de C#
manual de C#
 
Manual c# 2
Manual c# 2Manual c# 2
Manual c# 2
 
Manual de c#
Manual de c#Manual de c#
Manual de c#
 
Programacion orientada a objetos 2
Programacion orientada a objetos 2Programacion orientada a objetos 2
Programacion orientada a objetos 2
 
Lenguaje c ++ guía para programadores
Lenguaje c ++  guía para programadoresLenguaje c ++  guía para programadores
Lenguaje c ++ guía para programadores
 
Programación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prevProgramación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prev
 
Programación III
Programación IIIProgramación III
Programación III
 
Programación orientada a objetos con c++
Programación orientada a objetos con c++Programación orientada a objetos con c++
Programación orientada a objetos con c++
 
Sesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clasesSesion 07 nivel_acceso_miembros_clases
Sesion 07 nivel_acceso_miembros_clases
 
El lenguaje C++ (1).ppt
El lenguaje C++ (1).pptEl lenguaje C++ (1).ppt
El lenguaje C++ (1).ppt
 
El lenguaje C++.ppt
El lenguaje C++.pptEl lenguaje C++.ppt
El lenguaje C++.ppt
 
8.clases y objetos en c++
8.clases y objetos en c++8.clases y objetos en c++
8.clases y objetos en c++
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
 
INTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVAINTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVA
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje java
 
C# Nuevas características en C# 6
C# Nuevas características en C# 6C# Nuevas características en C# 6
C# Nuevas características en C# 6
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
 
Datos previos
Datos previosDatos previos
Datos previos
 

Mehr von Colegio Agropecuario de San Carlos

Mehr von Colegio Agropecuario de San Carlos (20)

Desarrollo sitios web
Desarrollo sitios webDesarrollo sitios web
Desarrollo sitios web
 
Lenguajes de programacion web
Lenguajes de programacion webLenguajes de programacion web
Lenguajes de programacion web
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
C sharp intro0
C sharp intro0C sharp intro0
C sharp intro0
 
Examensinrespuesta
ExamensinrespuestaExamensinrespuesta
Examensinrespuesta
 
Tipos de certificaciones profesionales en informática
Tipos de certificaciones profesionales en informáticaTipos de certificaciones profesionales en informática
Tipos de certificaciones profesionales en informática
 
Visual basic 2
Visual basic 2Visual basic 2
Visual basic 2
 
Presentación1
Presentación1Presentación1
Presentación1
 
Introducción a net
Introducción a netIntroducción a net
Introducción a net
 
Sistemas operativos 1
Sistemas operativos 1Sistemas operativos 1
Sistemas operativos 1
 
Servicios de sistemas
Servicios de sistemasServicios de sistemas
Servicios de sistemas
 
Planificador del procesador
Planificador del procesadorPlanificador del procesador
Planificador del procesador
 
Tipos sitemas operativos
Tipos sitemas operativosTipos sitemas operativos
Tipos sitemas operativos
 
Ms
MsMs
Ms
 
Practica ms dos 2
Practica ms dos 2Practica ms dos 2
Practica ms dos 2
 
Drop database bd
Drop database bdDrop database bd
Drop database bd
 
Igu
IguIgu
Igu
 
Intrefaz gráfica de usuario
Intrefaz gráfica de usuarioIntrefaz gráfica de usuario
Intrefaz gráfica de usuario
 
Igu
IguIgu
Igu
 
Intrefaz gráfica de usuario
Intrefaz gráfica de usuarioIntrefaz gráfica de usuario
Intrefaz gráfica de usuario
 

Visual C# Introducción

  • 1. Microsoft Visual Studio .Net 2005 Introduccion Visual C#.Net
  • 2. Introduccion a Visual C#.Net Sistemas de Tipos Clases y Estructuras Manejo de Excepciones
  • 3. Introduccion a Visual C#.Net Sistemas de Tipos • Tipos primitivos • Variables y constantes • Arrays (matrices) Clases y Estructuras Manejo de Excepciones
  • 4. Tipos Primitivos Tipos de datos definidos en .NET Framework y los alias utilizados en Visual C# 2005.
  • 5. Variables y Constantes Las constantes son valores que nunca cambian y pueden ser de dos tipos: 0.1416; // constante literal const double iva = 0.12; //constante con nombre En Visual C# 2005, en las variables en siempre se indican el tipo de datos que tendrá string saludo = “hola mundo”; int a, b, c; //declaracion de multiples variables double x=0.10, y=0.20, z=0.30 ; //declaracion y asignacion de variables Las cadenas de caracteres en C#, se definen indicando la cadena entre comillas dobles string s1 = "Hola, "; s1 = s1 + "mundo"; // StringBuilder deberíamos usarla enconcatenaciones o uniones de cadenas StringBuilder sb = new StringBuilder(); sb.Append("Hola, "); sb.Append("mundo");
  • 6. Arrays y Matrices Los arrays se definen indicando un par de corchetes en el tipo de datos int[ ] numeros; // un array se declara con el tipo de dato seguido de [ ] Numeros = new int[4]; //indica el numero de elementos que tendra el array int[ ] num2 = new int[3]; El índice inferior será cero y el índice superior será uno menos del número de elementos num2[0] = 3; //usamos los corchetes y la posición en la que queremos guardar num2[1] = 22; Para recorrer los elementos de un array podemos hacerlo de las siguientes formas for (int i = 0; i < num2.Length; i++) { Console.WriteLine(num2[i]); } foreach(int i in num2) { Console.WriteLine(i); }
  • 7. Arrays y Matrices Declarar arrays e inicializarlos al mismo tiempo, aunque la sintaxis es un poco distinta, ya que en esta ocasión debemos indicar varios valores después de definir el array string[ ] nombres = {"Pepe", "Juan", "Luisa"}; string[,] nombres = { { "Juan", "Pepe" }, { "Ana", "Eva" } }; // en este código tendríamos un array bidimensional con los siguientes valores: nombres[0,0]= Juan nombres[0,1]= Pepe nombres[1,0]= Ana nombres[1,1]= Eva Cambiar el tamaño de un array en el que añadimos 5 elementos más int[ ] original = { 1, 2, 3, 4 }; int[ ] copia = new int[original.Length]; // Copiamos el original en la copia original.CopyTo(copia, 0); original = new int[original.Length + 5]; // Asignamos nuevamente lo copiado a partir del primer elemento copia.CopyTo(original, 0);
  • 8. Introduccion a Visual C#.Net ∀ Sistemas de Tipos ∀ Clases • Clases • Definir una Clase • Instanciar una Clase Manejo de Excepciones
  • 9. Que es una Clase? • Una clase es una descripción de un grupo de objetos con: – Propiedades en común (atributos) – Comportamiento similar (operaciones) – La misma forma de relacionarse con otros objetos – Una semántica en común (significan lo mismo) • Una clase es una abstracción que: – Enfatiza las características relevantes – Suprime otras características (simplificación) • Un objeto es una instancia de una clase
  • 10. Ejemplo de Clase • Clase: Curso • Estado (Atributos) – Nombre – Ubicación – Días Ofrecidos – Horario de Inicio – Horario de Término • Comportamiento (Métodos) – Agregar un Alumno – Borrar un Alumno – Entregar un Listado del Curso – Determinar si está Completo
  • 11. Definir una Clase En Visual C# 2005, todo el código que queramos escribir, lo tendremos que hacer en un fichero con la extensión .cs Accesibilidad A los elementos de nuestro código podemos darle diferentes tipos. public: Acceso no restringido. public protected: Acceso limitado a la clase contenedora o a tipos derivados de esta clase. protected internal: Acceso limitado al proyecto actual. internal protected internal: Acceso limitado al proyecto o a los tipos derivados de la clase internal private: Acceso limitado al tipo contenedor. private class Cliente { private int CliCodigo; public string Nombre; public string Apellidos; }
  • 12. Definir una Clase En Visual C# 2005, todo el código que queramos escribir, lo tendremos que hacer en un fichero con la extensión .cs, ademas un fichero C# puede contener varias clases class Cliente { private int CliCodigo; private string CliNombre; public string Nombre { get { return CliNombre; } set { CliNombre = value; } } public void Saludo() { Console.WriteLine("Hola mundo!!"); Console.ReadLine(); } }
  • 13. Instaciar una Clase Con la clase ya definida disponemos de una especie de plantilla para crear objetos en memoria Declarar primero la variable y después instanciarla Cliente objCliente; //variable cli1 para acceder a una clase de tipo Cliente objCliente = new Cliente(); //referencia a objeto Cliente usando: new Cliente(): Declarar e instanciar en un solo paso es la otra forma de instanciar una clase es decir haciéndolo al mismo tiempo que la declaramos Cliente objCliente = new Cliente();
  • 14. Instaciar una Clase Con la clase ya definida disponemos de una especie de plantilla para crear objetos en memoria Declarar primero la variable y después instanciarla Cliente objCliente; //variable cli1 para acceder a una clase de tipo Cliente objCliente = new Cliente(); //referencia a objeto Cliente usando: new Cliente(): Declarar e instanciar en un solo paso es la otra forma de instanciar una clase es decir haciéndolo al mismo tiempo que la declaramos Cliente objCliente = new Cliente();
  • 15. Introduccion a Visual C#.Net ∀ Sistemas de Tipos ∀ Clases ∀ Manejo de Excepciones • Try • Catch
  • 16. Excepciones Aplicaciones no estarán libres de errores lógicos. Errores que se produzcan en tiempo de ejecución. C# pone a nuestra disposición el manejo de excepciones Las excepciones en C# las podemos controlar usando las instrucciones: try / catch / finally Bloque try El código a usar será un código normal. Se produce el error y se usará el bloque catch. Bloque catch Se produce una excepción y la capturamos en un bloque catch. En el bloque catch se indica el tipo de excepción a capturar.
  • 17. Try & Catch Con la clase ya definida disponemos de una especie de plantilla para crear objetos en memoria try { // código que queremos controlar } catch { // el código a ejecutar cuando se produzca cualquier error } Bloque finally Indicar instrucciones que queremos ejecutar, se produzca o no la excepción. Nos aseguramos que siempre se ejecutará un código.
  • 18. int i, j; try { Console.Write("Un numero "); i = Convert.ToInt32(Console.ReadLine()); Console.Write("Otro numero "); j = Convert.ToInt32(Console.ReadLine()); int r = i / j; Console.WriteLine("El resultado es: {0}", r); } catch (FormatException) { Console.WriteLine("No es un número válido"); // Salimos de la función, pero se ejecutará el finally return; } catch (DivideByZeroException) { Console.WriteLine("La división por cero no está permitida."); } catch (Exception ex) { Console.WriteLine(ex.Message); // Captura del resto de excepciones } finally { Console.WriteLine("Se acabó"); // Este código siempre se ejecutará }

Hinweis der Redaktion

  1. Las últimas filas mostradas en la tabla son tipos especiales que si bien son parte del sistema de tipos comunes (CTS) no forman parte de la Common Language Specification (CLS), es decir la especificación común para los lenguajes &amp;quot;compatibles&amp;quot; con .NET, por tanto, si queremos crear aplicaciones que puedan interoperar con todos los lenguajes de .NET, esos tipos no debemos usarlos como valores de devolución de funciones ni como tipo de datos usado en los parámetros de las funciones.
  2. La forma más sencilla de entender el concepto de clase es si la vemos como una agrupación de objetos con características similares. Por ejemplo, un auto ES UN tipo particular de vehículo motorizado, con lo cual dentro de su comportamiento podemos encontrar “arrancar” y “frenar”, entre otros. Ahora bien, una motocicleta también ES UN vehículo motorizado, y tiene dentro de su comportamiento “arrancar” y “frenar”. El conjunto de atributos también es compartido entre una motocicleta y un automóvil, aunque sus valores no coincidan necesariamente. Por ejemplo, ambos tienen el atributo “cantidad de ruedas”, sólo que el auto tiene 4 y la motocicleta 2.