Clases Predifinidas Por .Net c#

4
Clases Predefinidas Por .Net C# ofrece un conjunto de tipos predefinidos, la mayoría de los cuales resultarán familiares a los programadores de C y C++. Los tipos de referencia predefinidos son object y string. El tipo object es el tipo base definitivo de todos los demás tipos. El tipo string permite representar valores de cadena Unicode. Los valores del tipo string son inmutables. Los tipos de valor predefinidos incluyen tipos integrales con y sin signo, tipos con punto flotante y los tipos bool, char y decimal. Los tipos integrales con signo son sbyte, short, int y long; los tipos integrales sin signo son byte, ushort, uint y ulong; y los tipos de punto flotante son float y double. El tipo bool permite representar valores booleanos, que son true o false (verdadero o falso). La inclusión de bool facilita la programación de código autoexplicativo, y ayuda a eliminar el excesivamente frecuente error de codificación de C++ en el que un programador usa por error "=", cuando debería utilizar "==". En C#, el ejemplo int i = ...; F(i); if (i = 0) // Bug: the test should be (i == 0) G(); produce un error en tiempo de compilación porque la expresión i = 0 es de tipo int, y las instrucciones if requieren una expresión de tipo bool. El tipo char permite representar caracteres Unicode. Una variable de tipo char representa un carácter Unicode único de 16 bits. El tipo decimal es adecuado para aquellos cálculos en los que los errores de redondeo causados por las representaciones de punto flotante son inaceptables. Son ejemplos corrientes los cálculos financieros, por ejemplo, cálculos de impuestos y

description

Es una investigacion completa sobre las difenrentes clases predefinidas por C#

Transcript of Clases Predifinidas Por .Net c#

Clases Predefinidas Por .NetC# ofrece un conjunto de tipos predefinidos, la mayora de los cuales resultarn familiares a los programadores de C y C++. Los tipos de referencia predefinidos son object y string. El tipo object es el tipo base definitivo de todos los dems tipos. El tipo string permite representar valores de cadena Unicode. Los valores del tipo string son inmutables.Los tipos de valor predefinidos incluyen tipos integrales con y sin signo, tipos con punto flotante y los tipos bool, char y decimal. Los tipos integrales con signo son sbyte, short, int y long; los tipos integrales sin signo son byte, ushort, uint y ulong; y los tipos de punto flotante son float y double.El tipo bool permite representar valores booleanos, que son true o false (verdadero o falso). La inclusin de bool facilita la programacin de cdigo autoexplicativo, y ayuda a eliminar el excesivamente frecuente error de codificacin de C++ en el que un programador usa por error "=", cuando debera utilizar "==". En C#, el ejemploint i = ...;F(i);if (i = 0) // Bug: the test should be (i == 0) G();produce un error en tiempo de compilacin porque la expresin i = 0 es de tipo int, y las instrucciones if requieren una expresin de tipo bool.El tipo char permite representar caracteres Unicode. Una variable de tipo char representa un carcter Unicode nico de 16 bits.El tipo decimal es adecuado para aquellos clculos en los que los errores de redondeo causados por las representaciones de punto flotante son inaceptables. Son ejemplos corrientes los clculos financieros, por ejemplo, clculos de impuestos y conversiones de divisas. El tipo decimal proporciona 28 dgitos significativos.En la tabla inferior se enumeran los tipos predefinidos, y se muestra cmo pueden escribirse valores literales para cada uno.TipoDescripcinEjemplo

objectTipo base definitivo de todos los dems tiposobject o = null;

stringTipo de cadena; una cadena es una secuencia de caracteres Unicodestring s = "hello";

sbyteTipo integral de 8 bits con signosbyte val = 12;

shortTipo integral de 16 bits con signoshort val = 12;

intTipo integral de 32 bits con signoint val = 12;

longTipo integral de 64 bits con signolong val1 = 12;long val2 = 34L;

byteTipo integral de 8 bits sin signobyte val1 = 12;

ushortTipo integral de 16 bits sin signoushort val1 = 12;

uintTipo integral de 32 bits sin signouint val1 = 12;uint val2 = 34U;

ulongTipo integral de 64 bits sin signoulong val1 = 12;ulong val2 = 34U;ulong val3 = 56L;ulong val4 = 78UL;

floatTipo de punto flotante de precisin simplefloat val = 1.23F;

doubleTipo de punto flotante de precisin dobledouble val1 = 1.23;double val2 = 4.56D;

boolTipo Boolean; un valor bool puede ser true o falsebool val1 = true;bool val2 = false;

charTipo de carcter; un valor char es un carcter Unicodechar val = 'h';

decimalTipo decimal preciso con 28 dgitos significativosdecimal val = 1.23M;

Los tipos predefinidos proporcionan un mtodo sencillo para un tipo suministrado por el sistema. Por ejemplo, la palabra clave int hace referencia al struct System.Int32. Por motivos de estilo, se prefiere el uso de la palabra clave al uso del nombre completo del tipo de sistema.Los tipos de valor predefinidos como int reciben un tratamiento especial en algunos aspectos, pero en general su tratamiento es exactamente el mismo que el de otras estructuras. La sobrecarga de operadores permite a los desarrolladores definir tipos struct nuevos con un comportamiento prcticamente idntico al de los tipos de valor predefinidos. Por ejemplo, un struct Digit acepta las mismas operaciones matemticas que los tipos integrales predefinidos, y puede definir conversiones entre los tipos Digit y los predefinidos. Los mismos tipos predefinidos emplean la sobrecarga de operadores. Por ejemplo, los operadores de comparacin == y != tienen una semntica diferente para tipos predefinidos diferentes: Dos expresiones de tipo int se consideran equivalentes si representan el mismo valor entero. Dos expresiones de tipo object se consideran equivalentes si las dos hacen referencia al mismo objeto o si las dos son null. Dos expresiones de tipo string se consideran equivalentes si las instancias de las cadenas tienen la misma longitud y caracteres idnticos en cada posicin de carcter o si las dos son null.El siguiente ejemplousing System;class Test{ static void Main() { string s = "Test"; string t = string.Copy(s); Console.WriteLine(s == t); Console.WriteLine((object)s == (object)t); }}produce el resultadoTrueFalseporque la primera comparacin compara dos expresiones de tipo string, y la segunda compara dos expresiones de tipo object.