Está en la página 1de 3

1. ¿Cuál es la función del CLR (Common Language Runtime)?

La función del CLR es gestionar la ejecución de las aplicaciones .NET.

Realiza la compilación Just In Time (JIT) que traduce el código gestionado en


código nativo sobre la arquitectura de hardware que esté corriendo

2. ¿Qué espacios de nombres son necesarios activar en el desarrollo de


una aplicación de escritorio que utiliza el tipo List<> y accede a bases de
datos y ficheros de datos?

using System;
using System.Collections.Generic;

3. En C#, ¿cómo se pasa por referencia una variable de tipo int a un


método? ¿y un arreglo?

Se usa la palabra clave ref en la declaración y las llamadas al método. Por


ejemplo:

static void Method(ref int i) {


i = i + 44;
}
static void Main() {
int val = 1;...

pasar a un arreglo:

string[] a = new string[100];

4. ¿Para qué se utilizan los operadores is y as? Ponga un ejemplo de


cada uno de ellos.

Is: Se utiliza para devolver true si es posible realizar una conversión.

Ejemplo:

Pájaro b;
if (a is Pájaro)
b = (Pájaro) a; // No hay problema
else
Console.WriteLine("No es Pájaro");
as: Se utiliza para conversiones entre tipos referencia, como cast.

En caso de error, devuelve null, no causa una excepción.

Ejemplo:

Pájaro b = a as Pájaro; // Convertir

if (b == null)

Console.WriteLine("No es Pájaro”);

5. Explique qué diferencias y similitudes existen entre la herencia y


la implementación de interfaces cuando se utilizan desde una clase
en C#.

Diferencia:

Una herencia puede definir un cuerpo, variables y como serán los métodos de las
clases que extiendan de ella

Una interface tan solo define los métodos que deben tener las clases que la
implementan, no puede definir que cuerpo tendrán ni variables (salvo static y final)

Similitudes:

Ambas pueden heredar

6. Explique qué diferencias y similitudes existen entre los


métodos virtuales y abstractos cuando se utilizan desde una clase en
C#.

Diferencia:

Los métodos virtuales tienen una implementación y proporcionan a las clases


derivadas la opción de anularla.

Los métodos abstractos no proporcionan una implementación y obligan a las


clases derivadas a anular el método.
Similitud:

Los métodos abstractos son los métodos que se declaran pero no tienen
ninguna implementación.

Los métodos virtuales se utilizan para una implementación del


polimorfismo basado en tipos.

También podría gustarte