Está en la página 1de 13

c

Ingeniería Industrial
4to semestre

Algoritmos y lenguaje de programación 6T4

Practica 3

Unidad 2

Alumno: Tobaldo Cardenas Miguel Ángel


09210359

Profesora: Li. Ma. Icela Gill Clemente


19/09/10
= : El modificador abstract indica que el elemento objeto de la modificación tiene una
implementación incompleta o que le falta una implementación.El modificador abstract se puede
usar con clases, métodos, propiedades, indizadores y eventos.Use el modificador abstract en una
declaración de clase para indicar que la clase sólo se puede utilizar como clase base de otras
clases.Los miembros que están marcados como abstractos o que se incluyen en una clase abstracta,
deben ser implementados por clases derivadas de la clase abstracta.

  
La palabra clave byte denota un tipo integral que almacena valores según se muestra en
la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


byte 0 a 255 Entero de 8 bits sin signo System.Byte

  Las clases se declaran mediante la palabra clave class, como se muestra en el ejemplo
siguiente:

class TestClass
{
// Methods, properties, fields, events, delegates
// and nested classes go here.}

 


: La declaración de un tipo delegado es similar a una firma de método.Tiene un
valor devuelto y un número cualquiera de parámetros de cualquier tipo:

public delegate void TestDelegate(string message);


public delegate int TestDelegate(MyType m, long num);

Un delegate es un tipo de referencia que puede utilizarse para encapsular un método con nombre o
anónimo.Los delegados son similares a los punteros a funciones de C++, pero son más seguros y
proporcionan mayor seguridad de tipos.Para las aplicaciones de delegados, vea Delegados y
Delegados genéricos.

 

: La palabra clave event se utiliza para declarar un evento en una clase de editor.

 
 La instrucción fixed evita que el recolector de elementos no utilizados vuelva a ubicar
una variable móvil.La instrucción fixed solo se permite en un contexto no seguro.Fixed también se
puede utilizar para crear búferes de tamaño fijo.

 : La instrucción if selecciona una instrucción para ejecución en base al valor de una expresión
Boolean.En el ejemplo siguiente, la variable Booleanresult se establece en true y, a continuación, se
comprueba en la instrucción if.El resultado es: The variable is set to true.

 
 : La palabra clave internal es un modificador de acceso para tipos y miembros de
tipos.Los tipos o miembros internos sólo son accesibles dentro de los archivos del mismo
ensamblado, como en este ejemplo:

public class BaseClass


{
// Only accessible within the same assembly
internal static int x = 0;
}

 
: En C#, la palabra clave new se puede utilizar como operador, modificador o restricción.

uc new (Operador)
c Se utiliza para crear objetos e invocar constructores.
uc new (Modificador)
c Se utiliza para ocultar un miembro heredado de un miembro de clase base.
uc new (Restricción)
c Se utiliza para restringir tipos que se podrían utilizar como argumentos para un
parámetro de tipo en una declaración genérica.

= 

: El modificador override es necesario para ampliar o modificar la implementación
abstracta o virtual de un método, propiedad, indizador o evento heredado.

== 
 : La palabra clave readonly corresponde a un modificador que se puede utilizar en
campos.Cuando una declaración de campo incluye un modificador readonly, las asignaciones a los
campos que aparecen en la declaración sólo pueden tener lugar en la propia declaración o en un
constructor de la misma clase.

=  La palabra clave short denota un tipo de datos integral que almacena valores según el
tamaño y el intervalo que se indican en la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


short -32.768 a 32.767 Entero de 16 bits con signo System.Int16

=  Un tipo struct es un tipo de valor que se suele utilizar para encapsular pequeños
grupos de variables relacionadas, como las coordenadas de un rectángulo o las características de un
elemento de un inventario.En el ejemplo siguiente se muestra una declaración de struct sencilla.

public struct Book


{
public decimal price;
public string title;
public string author;
}

=  El bloque try contiene el código protegido que puede causar la excepción.Este bloque se
ejecuta hasta que se produce una excepción o hasta completarse satisfactoriamente.Por ejemplo, el
siguiente intento de convertir un objeto null provoca la excepción NullReferenceException:

object o2 = null;
try
{
int i2 = (int)o2; // Error
}
= 
: La palabra clave unsafe denota un contexto no seguro, que es necesario para
cualquier operación que involucre a punteros.

Se puede utilizar el modificador unsafe en la declaración de un tipo o un miembro.Toda la


extensión textual del tipo o del miembro se considera, por lo tanto, como contexto no seguro.Por
ejemplo, el siguiente método se ha declarado con el modificador unsafe:

unsafe static void FastCopy(byte[] src, byte[] dst, int count)


{
// Unsafe context: can use pointers here.}

El ámbito del contexto no seguro se extiende desde la lista de parámetros hasta el final del método,
de modo que también se pueden utilizar punteros en la lista de parámetros:

unsafe static void FastCopy ( byte* ps, byte* pd, int count ) {...}

También puede utilizar un bloque no seguro para habilitar el uso de código no seguro dentro del
mismo.Por ejemplo:

unsafe
{
// Unsafe context: can use pointers here.}

Para compilar código no seguro, se debe especificar la opción /unsafe del compilador.Common
Language Runtime no puede comprobar el código no seguro.

=  
: La palabra clave volatile indica que varios subprocesos que se ejecutan a la vez
podrían modificar un campo.Los campos que se declaran como volatile no están sujetos a
optimizaciones del compilador que suponen el acceso por un subproceso único.Esto garantiza que el
valor más actualizado está en todo momento presente en el campo.

El modificador volatile suele utilizarse para un campo al que tengan acceso varios subprocesos sin
utilizar la instrucción lock para serializar el acceso.

La palabra clave volatile se puede aplicar a los campos de estos tipos:

uc Tipos de referencia.
uc Tipos de puntero (en un contexto no seguro).Tenga en cuenta que aunque el propio puntero
puede ser volátil, no ocurre lo mismo con el objeto al que apunta.Es decir, no puede
declarar un "puntero como volátil".
uc Tipos como sbyte, byte, short, ushort, int, uint, char, float y bool.
uc Un tipo de enumeración con uno de los siguientes tipos base: byte, sbyte, short, ushort, int o
uint.
uc Parámetros de tipo genéricos que se sabe que son tipos de referencia.
uc IntPtr y UIntPtr.

La palabra clave volatile sólo se puede aplicar a los campos de una clase o struct.Las variables
locales no se pueden declarar como volatile.
= : El operador as se usa para realizar determinados tipos de conversiones entre tipos de
referencia compatibles.Por ejemplo:

class csrefKeywordsOperators
{
class Base
{
public override string ToString()
{
return "Base";
}
}
class Derived : Base
{}

class Program
{
static void Main()
{

Derived d = new Derived();

Base b = d as Base;
if (b != null)
{
Console.WriteLine(b.ToString());
}

}
}
}

= 


= : La palabra clave const se utiliza para modificar una declaración de un campo o una
variable local.Especifica que el valor del campo o de la variable local es constante, o sea que no se
puede modificar.Por ejemplo:

const int x = 0;
public const double gravitationalConstant = 6.673e-11;
private const string productName = "Visual C#";

  La instrucción do ejecuta una instrucción o un bloque de instrucciones entre {}


repetidamente hasta que una expresión especificada se evalúe como false.

= 
  La palabra clave explicit declara un operador de conversión de tipos definido por
el usuario que se debe invocar con una conversión de tipos.Por ejemplo, este operador convierte una
clase denominada Fahrenheit en una clase denominada Celsius:
C#
// Must be defined inside a class called Farenheit:
public static explicit operator Celsius(Fahrenheit f)
{
return new Celsius((5.0f / 9.0f) * (f.degrees - 32));
}

El operador de conversión se puede invocar así:

C#
Fahrenheit f = new Fahrenheit(100.0f);
Console.Write("{0} fahrenheit", f.Degrees);
Celsius c = (Celsius)f;

El operador de conversión convierte un tipo de origen en un tipo de destino.El tipo de origen


proporciona el operador de conversión.A diferencia de la conversión implícita, los operadores de
conversión explícita deben invocarse mediante una conversión de tipo (cast).Si una operación de
conversión puede producir excepciones o pérdida de información, debe marcarse como explicit.De
esta forma, se evita que el compilador realice la conversión automáticamente y se produzcan
posibles consecuencias no deseadas.

   La palabra clave float denota un tipo simple que almacena valores de punto flotante
de 32 bits.La siguiente tabla muestra la precisión y el intervalo de valores aproximado para el tipo
float.

Tipo Intervalo aproximado Precisión Tipo de .NET Framework


float -3.4 × 1038to +3.4 × 1038 7 dígitos System.Single

 !  La palabra clave implicit se utiliza para declarar un operador de conversión de tipo
implícito definido por el usuario.Utilícela para permitir conversiones implícitas entre un tipo
definido por el usuario y otro tipo, si existen garantías de que la conversión no provocará la pérdida
de datos.

 : Comprueba si un objeto es compatible con un tipo determinado.Por ejemplo, el código


siguiente puede determinar si un objeto es una instancia del tipo MyObject o un tipo que se deriva
de MyObject:

if (obj is MyObject)
{
}

Una expresión is se evalúa como true si la expresión proporcionada no es NULL y el objeto


proporcionado se puede convertir al tipo proporcionado sin producir una excepción.
La palabra clave is genera una advertencia en tiempo de compilación si se sabe que la expresión
siempre será true o siempre será false, pero normalmente evalúa la compatibilidad de tipos en
tiempo de ejecución.

  : La palabra clave null es un literal que representa una referencia nula, es decir, que no
apunta a ningún objeto.null es el valor predeterminado de variables de tipo referencia.Los tipos de
valor normales no pueden ser null.Sin embargo, en C# 2.0 se introdujeron los tipos de valor que
aceptan valores NULL.

  !: La palabra clave params permite especificar un parámetro de método que acepta un
número variable de argumentos.

Puede enviar una lista separada por comas de argumentos del tipo especificado en la declaración de
parámetro o una matriz de argumentos del tipo especificado.También puede no enviar ningún
argumento.

No se permiten parámetros adicionales después de la palabra clave params, ni varias palabras clave
params en una misma declaración de método.

 
 La palabra clave ref produce argumentos que se van a pasar por referencia.El efecto es
que cualquier cambio que se realice en el parámetro dentro del método se reflejará en esa variable
cuando se devuelva el control al método de llamada.

 "
: Se usa para obtener el tamaño en bytes de un tipo no administrado.Los tipos no
administrados incluyen los tipos integrados que se muestran en la tabla que figura a continuación,
además de estos:

uc Tipos de enumeración
uc Tipos de puntero
uc Structs definidos por el usuario que no contienen ningún campo o propiedad que sea un tipo
de referencia

  La instrucción switch es una instrucción de control que controla múltiples


selecciones y enumeraciones pasando el control a una de las instrucciones case de su cuerpo.

 
 Obtenga el objeto System.Type para un tipo.Una expresión typeof se presenta de la
siguiente forma:

System.Type type = typeof(int);

=  La palabra clave ushort indica un tipo de datos integral que almacena valores según
el tamaño y el intervalo que se indican en la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


ushort 0 a 65.535 Entero de 16 bits sin signo System.UInt16

 
: La instrucción while ejecuta una instrucción o un bloque de instrucciones
repetidamente hasta que una expresión especificada se evalúa como false.

La palabra clave base se utiliza para obtener acceso a los miembros de la clase base
desde una clase derivada:

uc Realice una llamada a un método de la clase base reemplazado por otro método.
uc Especifique a qué constructor de la clase base se debe llamar para crear instancias de la
clase derivada.

El acceso a una clase base sólo se permite en un constructor, en un método de instancia o en un


descriptor de acceso a una propiedad de instancia.

Es incorrecto utilizar la palabra clave base desde dentro de un método estático.

La clase base a la que se tiene acceso es la clase base especificada en la declaración de clase.Por
ejemplo, si especifica class ClassB : ClassA, se tiene acceso a los miembros de ClassA desde
ClassB, sin tener en cuenta la clase base de ClassA.

  la cláusula catch puede utilizarse sin argumentos para detectar cualquier tipo de
excepción, no se recomienda este uso.En general, sólo debe detectar las excepciones de las que sepa
cómo recuperarse.Por lo tanto, debe especificar siempre un argumento de objeto derivado de
System.Exception. Por ejemplo:

catch (InvalidCastException e)
{
}

Es posible utilizar más de una cláusula catch específica en la misma instrucción try-catch.En este
caso, el orden de las cláusulas catch es importante, ya que las cláusulas catch se examinan por
orden.Las excepciones más específicas se capturan antes que las menos específicas.El compilador
generará un error si ordena los bloques catch de forma que nunca se alcance un bloque posterior.

 
La instrucción continue transfiere el control a la siguiente iteración de la
instrucción de iteración envolvente donde aparece.

 
La palabra clave double denota un tipo simple que almacena valores de punto
flotante de 64 bits.La siguiente tabla muestra la precisión y el intervalo de valores aproximado para
el tipo double.

Tipo Intervalo aproximado Precisión Tipo de .NET Framework


double ±5,0 × 10í 324 a ±1,7 × 10308 15-16 dígitos System.Double

 

 El modificador extern se utiliza para declarar un método que se implementa
externamente.Un uso común del modificador extern es con el atributo DllImport cuando se utilizan
servicios de interoperabilidad para llamar a código no administrado.En este caso, el método se debe
declarar también como static, como se muestra en el ejemplo siguiente:

[DllImport("avifil32.dll")]
private static extern void AVIFileInit();
  El bucle for ejecuta una instrucción o un bloque de instrucciones repetidamente hasta que
una determinada expresión se evalúa como false.El bucle for es útil para recorrer en iteración
matrices y para procesar secuencialmente.

 : En los parámetros de tipo genérico, la palabra clave in especifica que el parámetro de tipo
es contravariante.Puede usar la palabra clave in en delegados e interfaces genéricos.

  # La palabra clave lock marca un bloque de instrucciones como una sección crucial, para
lo cual utiliza el bloqueo de exclusión mutua de un objeto, la ejecución de una instrucción y,
posteriormente, la liberación del bloqueo.La instrucción presenta la siguiente forma:

Object thisLock = new Object();


lock (thisLock)
{
// Critical code section.}

= $
: El tipo object es un alias de Object en .NET Framework.En el sistema de tipos
unificado de C#, todos los tipos (tipos de valor y de referencia predefinidos y definidos por el
usuario) se heredan directa o indirectamente de Object.Las variables de tipo object pueden recibir
valores de cualquier tipo.Cuando una variable de un tipo de valor se convierte en un objeto, se dice
que se le ha aplicado la conversión boxing.Cuando una variable de objeto de tipo se convierte en un
tipo de valor, se dice que se le ha aplicado la conversión unboxing.

  
: La palabra clave private es un modificador de acceso de miembros.El acceso de
tipo private corresponde al nivel de acceso más restrictivo.Los miembros privados sólo son
accesibles dentro del cuerpo de la clase o struct en los que se declaran, como en el siguiente
ejemplo.

class Employee
{
private int i;
double d; // private access by default
}

 
 La instrucción return termina la ejecución del método en el que aparece y devuelve
el control al método que realizó la llamada.También puede devolver un valor opcional.Si el método
es del tipo void, la instrucción return se puede omitir.

Si la instrucción return está incluida en un bloque try, el bloque finally, si existe, se ejecutará antes
de que el control se devuelva al método de llamada.

 #  La palabra clave stackalloc se utiliza en un contexto de código no seguro


para asignar un bloque de memoria en la pila.

int* fib = stackalloc int[100];

  La palabra clave this hace referencia a la instancia actual de la clase y también se utiliza
como modificador del primer parámetro de un método de extensión.
  a palabra clave uint denota un tipo de integral que almacena valores según el tamaño y
el intervalo que se indican en la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


uint 0 a 4.294.967.295 Entero de 32 bits sin signo System.UInt32

  La palabra clave using tiene dos usos principales:

uc Como directiva, cuando se utiliza para crear un alias para un espacio de nombres o para
importar tipos definidos en otros espacios de nombres.Vea Directiva using.
uc Como instrucción, cuando define un ámbito al final del cual el objeto se destruye.

  La palabra clave bool es un alias de System.Boolean.Se utiliza para declarar variables
que almacenan los valores booleanos, true y false.

  La palabra clave char se utiliza para declarar un carácter Unicode en el intervalo
indicado en la siguiente tabla.Los caracteres Unicode son caracteres de 16 bits que se utilizan para
representar la mayoría de los lenguajes escritos de todo el mundo.

Tipo Intervalo Size Tipo de .NET Framework


char U+0000 a U+ffff Carácter Unicode de 16 bits System.Char

 
! : La palabra clave decimal indica un tipo de datos de 128 bits.Comparado con los
tipos de punto flotante, el tipo decimal tiene una mayor precisión y un intervalo más reducido, lo
que lo hace adecuado para cálculos financieros y monetarios.El intervalo aproximado y la precisión
para el tipo decimal aparecen en la siguiente tabla.

Tipo de .NET
Tipo Intervalo aproximado Precisión
Framework
(de -7,9 x 1028 a 7,9 x 1028) / (10de 0 28-29 dígitos
decimal System.Decimal
a 28) significativos

= 



  
Se utiliza como un operador sobrecargado o como un literal:

uc false (Operador)
uc false (Literal)

 
  La instrucción foreach repite un grupo de instrucciones incrustadas para cada
elemento de una matriz o colección de objetos que implementa la interfaz
System.Collections.IEnumerable o System.Collections.Generic.IEnumerable<T>.La instrucción
foreach se utiliza para recorrer la colección en iteración y obtener la información deseada, pero no
se puede utilizar para agregar o quitar elementos de la colección de origen, ya que se pueden
producir efectos secundarios imprevisibles.Si necesita agregar o quitar elementos de la colección de
origen, utilice un bucle for.
  La palabra clave int denota un tipo integral que almacena valores según el tamaño y el
intervalo que se indica en la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


int -2.147.483.648 a 2.147.483.647 Entero de 32 bits con signo System.Int32

   La palabra clave long denota un tipo integral que almacena valores según el tamaño y
el intervalo que se indican en la tabla siguiente.

Tipo de .NET
Tipo Intervalo Size
Framework
9.223.372.036.854.775.808 a Entero de 64 bits con
long System.Int64
9.223.372.036.854.775.807 signo

 
 Utilice la palabra clave operator para sobrecargar un operador integrado o
proporcionar una conversión definida por el usuario en una declaración de clase o struct.

  

 La palabra clave protected es un modificador de acceso a miembros.Un
miembro protegido es accesible dentro de su clase y por instancias de clases derivadas.Encontrará
una comparación de protected con los otros modificadores de acceso en Niveles de accesibilidad.

  
La palabra clave sbyte indica un tipo de integral que almacena valores según el
tamaño y el intervalo que se indican en la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


sbyte -128 a 127 Entero de 8 bits con signo System.SByte

  Utilice el modificador static para declarar un miembro estático, que pertenece al
propio tipo en vez de a un objeto específico.El modificador static puede utilizarse con clases,
campos, métodos, propiedades, operadores, eventos y constructores, pero no puede utilizarse con
indizadores, destructores o tipos que no sean clases.

  La instrucción throw se utiliza para señalizar la aparición de una situación anómala
(excepción) durante la ejecución del programa.

=   La palabra clave ulong denota un tipo integral que almacena valores según el tamaño
y el intervalo que se indican en la tabla siguiente.

Tipo Intervalo Size Tipo de .NET Framework


ulong 0 a 18.446.744.073.709.551.615 Entero de 64 bits sin signo System.UInt64

  La palabra clave virtual se utiliza para modificar un método, propiedad, indizador
o declaración de evento y permite invalidar cualquiera de estos elementos en una clase derivada.En
el siguiente ejemplo, cualquier clase que hereda este método puede reemplazarlo:

public virtual double Area()


{
return x * y;
}

La implementación de un miembro virtual puede reemplazarse por un miembro de reemplazo de


una clase derivada.

 
# La instrucción break permite terminar el bucle envolvente más cercano o la
instrucción switch en la cual aparece.El control se transfiere a la instrucción que sigue a la
instrucción terminada, si existe alguna.

 
#
 La palabra clave checked se usa con el fin de habilitar explícitamente la
comprobación de desbordamiento para operaciones aritméticas y conversiones de tipo integral.

 
  La palabra clave default se puede utilizar en la instrucción switch o en código
genérico:

uc Instrucción switch: Especifica la etiqueta predeterminada.


uc Código genérico: Especifica el valor predeterminado del parámetro de tipo.Éste será null
para los tipos de referencia y cero para los tipos de valor.

 
! La palabra clave enum se utiliza para declarar una enumeración, un tipo distinto que
consiste en un conjunto de constantes con nombre denominado lista de enumeradores.

  : El bloque finally es útil para limpiar cualquier recurso asignado en el bloque try,
así como también para ejecutar cualquier código que deba ejecutarse incluso si hay una
excepción.El control se transfiere siempre al bloque finally independientemente de cómo finalice el
bloque try.

  La instrucción goto transfiere el control del programa directamente a una instrucción
identificada por una etiqueta.

Un uso habitual de goto consiste en transferir el control a una etiqueta switch-case específica o a la
etiqueta predeterminada de una instrucción switch.

La instrucción goto también es útil para salir de bucles de varios niveles de anidamiento.

 

Una interfaz contiene solo las firmas de métodos, propiedades, eventos o
indizadores.Una clase o struct que implementa la interfaz debe implementar los miembros de la
interfaz que se especifican en la definición de interfaz.En el ejemplo siguiente, la clase
ImplementationClass debe implementar un método denominado SampleMethod que no tenga
ningún parámetro y devuelva void.

 !
 
La palabra clave namespace se utiliza para declarar un ámbito.Este ámbito
permite organizar el código y proporciona una forma de crear tipos globalmente únicos.

=  La palabra clave contextual out se utiliza en dos contextos:

uc modificador de parámetro en listas de parámetros


uc parámetros de tipo genérico en interfaces y delegados genéricos.

    La palabra clave public es un modificador de acceso para tipos y miembros de


tipos.El acceso de tipo public corresponde al nivel de acceso menos restrictivo.No existen
restricciones para obtener acceso a los miembros públicos, como en este ejemplo:

class SampleClass
{
public int x; // No access restrictions.}

 

 El modificador sealed, cuando se aplica a una clase, impide que otras clases se
hereden de él.En el ejemplo siguiente, la clase B se hereda de la clase A, pero no es posible heredar
ninguna clase de la clase B.

class A {}
sealed class B : A {}

El modificador sealed también puede utilizarse en un método o propiedad que invalide un método o
propiedad virtual en una clase base.De esta forma, puede permitir la derivación de clases de su clase
e impedir que invaliden determinados métodos o propiedades virtuales.

  El tipo string representa una secuencia de cero o más caracteres Unicode.string es un
alias de String en .NET Framework.

 
Se utiliza como un operador sobrecargado o como un literal:

uc true (Operador)
uc true (Literal)

 
#
: La palabra clave unchecked se utiliza con el fin de suprimir la comprobación
de desbordamiento para operaciones aritméticas y conversiones de tipo integral.

  Cuando se utiliza como tipo de valor devuelto por un método, void especifica que el
método no devuelve ningún valor.

No se permite utilizar void en la lista de parámetros de un método.Un método que no utiliza


parámetros y que no devuelve ningún valor se declara del siguiente modo:

void SampleMethod();

void también se utiliza en un contexto no seguro para declarar un puntero a un tipo desconocido.

Bibliografia:

http://msdn.microsoft.com/library/x53a06bb.aspx