sintaxis de c# (declaraciones y tipos) contenido cts (common type system) tipos en c# lenguaje c#...
TRANSCRIPT
Sintaxis de C#(Declaraciones y
Tipos)
Sintaxis de C#(Declaraciones y
Tipos)
ContenidoContenido
CTS (Common Type System)Tipos en C#Lenguaje C#Características del LenguajeDeclaraciones
CTS (Common Type System)CTS (Common Type System)Define un conjunto común de “tipos” de datos orientados a objetos
Todo lenguaje de programación .NET debe implementar los tipos definidos por el CTS
Todo tipo hereda directa o indirectamente del tipo System.Object
Define Tipos de VALOR y de REFERENCIA
Todo tipo hereda directa o indirectamente del tipo System.Object
Define Tipos de VALOR y de REFERENCIA
CTS: CaracterísticasCTS: Características
Cada 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.
InteroperabilidadInteroperabilidad
Los Tipos de DatosLos 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 Stack
Los tipos REFERENCIA se almacenan en el Heap
Los tipos VALOR se almacenan en el Stack
Los tipos REFERENCIA se almacenan en el Heap
Tipos de Datos por Valor
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) long
Punto 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 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
Conversión de tipos por Valor y Referencia
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 ValorTipo por
Referencia
Boxing
Unboxing
Tipos Valor y RefTipos Valor y Ref
C#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.
Sintaxis C#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;
Sintaxis C#Sintaxis C#Declaración en Bloques en llaves “{}”:
class Programa{ public static void Main(string[] args) {
Console.WriteLine(“Hola Mundo!"); }
}
Sintaxis C#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;}}
Sintaxis C#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
Sintaxis C#Sintaxis C#Declaración de variables
int i;decimal d;rectangle r;Persona per;
Sintaxis C#Sintaxis C#Inicialización de variables
int i; //INCORRECTOSystem.Console.WriteLine(i); //INCORRECTO
int i=0; //CORRECTOSystem.Console.WriteLine(i); //CORRECTO
Sintaxis C#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”
Sintaxis C#Sintaxis C#
RecursosRecursos
CLS:http://msdn.microsoft.com/en-us/library/12a7a7h3(VS.80).aspx
Overview 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
Gracias por su Atención…
Gracias por su Atención…
Preguntas??Preguntas??