Sintaxis de C# (Declaraciones y Tipos)

21

description

Sintaxis de C# (Declaraciones y Tipos). Contenido. CTS ( Common Type System ) Tipos en C# Lenguaje C# Características del Lenguaje Declaraciones. CTS (Common Type System). Define un conjunto común de “tipos” de datos orientados a objetos - PowerPoint PPT Presentation

Transcript of Sintaxis de C# (Declaraciones y Tipos)

Page 1: Sintaxis de C# (Declaraciones y Tipos)
Page 2: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis de C#(Declaraciones y

Tipos)

Page 3: Sintaxis de C# (Declaraciones y Tipos)

ContenidoCTS (Common Type System)Tipos en C#Lenguaje C#Características del LenguajeDeclaraciones

Page 4: Sintaxis de C# (Declaraciones y Tipos)

CTS (Common Type System)Define un conjunto común de “tipos” de datos orientados a objetosTodo lenguaje de programación .NET debe implementar los tipos definidos por el CTSTodo tipo hereda directa o indirectamente del tipo System.ObjectDefine Tipos de VALOR y de REFERENCIA

Page 5: Sintaxis de C# (Declaraciones y Tipos)

CTS: CaracterísticasCada tipo puede tener cero o mas miembros (campo, método, propiedad, evento).No puede existir la herencia Múltiple.Todo Tipo hereda directa o indirectamente del tipo System.ObjectLos objetos que lanzan un tipo de excepción deben heredar (directa o indirectamente) de System.ExceptionLos tipos declarados en 2 ensamblados distintos, son distintos, aunque tengan el mismo nombre.

Page 6: Sintaxis de C# (Declaraciones y Tipos)

Interoperabilidad

Page 7: Sintaxis de C# (Declaraciones y Tipos)

Los Tipos de DatosEl CLR administra dos segmentos de memoria: Stack (Pila) y Heap (Montón)El Stack es liberado automáticamente y el Heap es administrado por el GC (Garbage Collector)Los tipos VALOR se almacenan en el StackLos tipos REFERENCIA se almacenan en el Heap

Page 8: Sintaxis de C# (Declaraciones y Tipos)

Tipos de Datos por Valor

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) longPunto Flotante Single

Un número de punto flotante de simple precisión (32-bit) float

    DoubleUn número de punto flotante de doble precisión (64-bit) double

    Decimal Un número decimal de 96-bit decimalLógicos Boolean Un valor booleano (true o false) boolOtros 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 9: Sintaxis de C# (Declaraciones y Tipos)

Conversión de tipos por Valor y Referencia

Para poder convertir tipos por valor a referencia y viceversa se utiliza una técnica conocida como:BOXING:Convierte un tipo por valor a uno por referencia.UNBOXING:Convierte un tipo por referencia a un tipo por valor.Tipo por Valor Tipo por

Referencia

Boxing

Unboxing

Page 10: Sintaxis de C# (Declaraciones y Tipos)

Tipos Valor y Ref

Page 11: Sintaxis de C# (Declaraciones y Tipos)

C#Lenguaje Creado específicamente para la plataforma .NETEstándar ECMA (Ecma-334).Orientado a Objetos y Componentes.Soporta todas las características de la POO:

- Abstracción - Encapsulación.- Herencia.- Polimorfismo.

Sintaxis derivada de C, C++, Delphi y Java.

Page 12: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#Terminación de Línea, es con un “;”

int a = 1 + b;

int a = 1 + b;

int a = 1 + b;

int a = 1 + b;

Page 13: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#Declaración en Bloques en llaves “{}”:

class Programa{ public static void Main(string[] args) {

Console.WriteLine(“Hola Mundo!"); }

}

Page 14: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#Comentarios en el código:

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 15: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#C# es un lenguaje “case-sensitive”

system.console.writeline(“HOLA”); //INCORRECTO

System.Console.WriteLine(“HOLA”); //CORRECTO

int a; //INCORRECTOA = 1; //INCORRECTO

int a; //CORRECTOA = 1; //CORRECTO

Page 16: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#Declaración de variables

int i;decimal d;rectangle r;Persona per;

Page 17: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#Inicialización de variables

int i; //INCORRECTOSystem.Console.WriteLine(i); //INCORRECTO

int i=0; //CORRECTOSystem.Console.WriteLine(i); //CORRECTO

Page 18: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#Conversión de Tipos

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) ... //Comparación con el operador “is”

Page 19: Sintaxis de C# (Declaraciones y Tipos)

Sintaxis C#

Page 20: Sintaxis de C# (Declaraciones y Tipos)

RecursosCLS:

http://msdn.microsoft.com/en-us/library/12a7a7h3(VS.80).aspxOverview Tipos de la BCL:

http://msdn.microsoft.com/en-us/library/hfa3fa08(VS.80).aspx• Estándar para C# y CLIhttp://msdn.microsoft.com/en-us/netframework/aa569283.aspx

Referencia C#:http://msdn.microsoft.com/es-es/library/618ayhy6(VS.80).aspx

Page 21: Sintaxis de C# (Declaraciones y Tipos)

Gracias por su Atención…

Preguntas??