¿Quién puede proporcionar algunas preguntas de prueba escritas sobre .net? Se lo agradeceré.

1. Describa brevemente los permisos de acceso de los modificadores privados, protegidos, públicos e internos.

Respuesta .privada: Solo se puede acceder a los miembros privados dentro de la clase.

protegido: se puede acceder a los miembros protegidos dentro de la clase y las clases heredadas.

Público: Miembros públicos, completamente públicos, sin restricciones de acceso.

interno: Accesible dentro del mismo espacio de nombres.

2. Enumere varias formas de transferir valores entre páginas ASP.NET.

Respuesta 1. Utilice QueryString, como....?id=1; Redirect()....

2.

3. Utilice Server.Transfer

3. Las reglas para una columna de números son las siguientes: 1, 1, 2, 3, 5, 8, 13, 21, 34... Buscar la posición 30 ¿Cuál es el número? Se implementa mediante un algoritmo recursivo.

Respuesta: clase pública MainClass

{

public static void Main()

{

Consola. WriteLine(Foo(30));

}

public static int Foo(int i)

{

if (i lt ;= 0)

return 0;

else if(i gt; 0 amp; amp; i lt;= 2)

return 1; p> p>

else return Foo(i -1) Foo(i - 2

}

}

4. ¿C# es qué? ¿Un evento es un encargo?

Respuesta:

Un delegado puede sustituir un método como parámetro en otro método.

Un delegado puede entenderse como una referencia que apunta a una función.

Sí, es un tipo especial de delegación

5. La diferencia entre anular y sobrecargar

Respuesta:

anular y sobrecargar. diferencia. La sobrecarga es un método con el mismo nombre. Si los parámetros o tipos de parámetros son diferentes, se realizan múltiples sobrecargas para satisfacer diferentes necesidades.

La anulación es la reescritura de funciones en la clase base. Para adaptarse a las necesidades.

6. Si necesita pasar valores variables en un sistema de estructura B/S, pero no se pueden utilizar Sesión, Cookie y Aplicación, ¿cuántos métodos tiene para manejarlo?

Respuesta:

this.Server.Transfer

7. Recorra mediante programación todos los controles TextBox de la página y asígnele un valor de string.Empty?

Respuesta:

foreach (control System.Windows.Forms.Control en this.Controls)

{

if (el control es System.Windows.Forms.TextBox)

{

System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control

tb.Text = String.Empty;

}

}

8. ¿Programe un algoritmo de clasificación de burbujas?

Respuesta:

int [] array = new int [*]

int temp = 0

for (int i; = 0; i lt; matriz.Longitud - 1; i)

{

para (int j = i 1; j lt; matriz.Longitud; j)

{

if (matriz[j] lt; matriz[i])

{

temp = matriz[i];

matriz[i] = matriz[j]

matriz[j] = temporal

}

}

}

9. Describe el proceso de implementación del indexador en C#. ¿Solo se puede indexar en función de números?

Respuesta: No. Se puede utilizar cualquier tipo.

10. Encuentra el valor de la siguiente expresión y escribe uno o varios métodos de implementación que se te ocurran: 1-2 3-4... m

Respuesta:

int Num = this.TextBox1.Text.ToString();

int Suma = 0

for (int i = 0; i lt; Num 1; i )

{

si((i2) == 1)

{

Suma = i; >}

else

{

Suma = Suma - I

}

}

System.Console.WriteLine(Sum.ToString());

System.Console.ReadLine()

11. ¿Cuántas capas de estructura utiliza para desarrollar el sistema? ¿Cuál es la relación entre cada capa y por qué está en capas de esta manera?

Respuesta: Generalmente, hay tres capas:

Capa de acceso a datos, capa empresarial y capa de presentación.

La capa de acceso a datos realiza altas, eliminaciones, comprobaciones y modificaciones en la base de datos.

La capa empresarial generalmente se divide en dos capas: la capa de apariencia empresarial realiza la comunicación con la capa de presentación y la capa de reglas comerciales realiza la seguridad de las contraseñas de los usuarios.

La capa de presentación se utiliza para interactuar con los usuarios, como los usuarios que agregan formularios.

Ventajas: División clara del trabajo, organización clara, fácil de depurar y escalable.

Desventajas: Mayor coste.

12. En el siguiente ejemplo

usando System

clase A

{

público A ( )

{

PrintFields();

}

PrintFields vacío virtual público(){}

}

clase B: A

{

int x=1

int y

público; B()

{

y=-1

}

anulación pública void PrintFields()

{

Console.WriteLine("x={0},y={1}",x,y

}

Cuando se usa Qué); ¿Qué salida produce new B() cuando crea una instancia de B?

Respuesta: X=1, Y=0; x= 1 y = -1

13.

Respuesta: El dominio de la aplicación puede entenderse como un proceso ligero. Juega un papel de seguridad. Ocupa pocos recursos.

14. ¿Cuáles son las explicaciones de CTS, CLS y CLR?

Respuesta: CTS: Sistema de Lenguaje Común. CLS: Especificación de lenguaje común. CLR: biblioteca de tiempo de ejecución de lenguaje público.

15. ¿Qué son el embalaje y el desempaquetado?

Respuesta: Convertir de interfaz de tipo de valor a cuadro de tipo de referencia. Conversión de tipo de referencia a tipo de valor unboxing.

16.¿Qué es el código regulado?

Respuesta: inseguro: código no administrado. Ejecutar sin pasar por el CLR.

17. ¿Qué es un sistema de tipos fuerte?

Respuesta: RTTI: Sistema de Identificación de Tipo.

¿Qué clases se necesitan para leer y escribir bases de datos en 18.net? ¿Su papel?

Respuesta: DataSet: almacenamiento de datos.

DataCommand: Ejecutar comando de declaración.

DataAdapter: Una colección de datos, llena de palabras.

19.¿Cuáles son los métodos de autenticación de ASP.net? ¿Cuáles son las diferencias?

Respuesta: 10. Windows (predeterminado) usa IIS...Desde (formulario) usa cuenta...Pasaporte (clave)

20.

Respuesta: Código post-siembra.

21. En .net, ¿qué significa accesorios?

Respuesta: Montaje. (Lenguaje intermedio, datos fuente, recursos, lista de ensamblaje)

22. ¿Cuáles son los métodos comúnmente utilizados para llamar a WebService?

Respuesta: 1. Utilice la herramienta de línea de comandos WSDL.exe.

2. Utilice la opción de menú Agregar referencia web en VS.NET

23.. ¿Cómo funciona net Remoting?

Respuesta: El servidor envía un número de proceso y un número de dominio de programa al cliente para determinar la ubicación del objeto.

24. En C#, string str = null y string str = "" Intente utilizar texto o imágenes para explicar la diferencia.

Respuesta: string str = null no le asigna espacio de memoria, pero string str = "" asigna espacio de memoria para una cadena vacía.

25. ¿Por favor explique las similitudes y diferencias entre clases y estructuras en dotnet?

Respuesta: Se puede crear una instancia de clase, es un tipo de referencia y se asigna en el montón de memoria. La estructura es un tipo de valor y se asigna en la pila de memoria. 26. Según su conocimiento de los delegados, complete los siguientes fragmentos de código en el control de usuario:

prueba de espacio de nombres

{

public delegado vacío OnDBOperate()

clase pública UserControlBase: System.Windows.Forms.UserControl

{

evento público OnDBOperate OnNew

privatevoidtoolBar_ButtonClick(objectsender, System.Windows.Forms.ToolBarButtonClickEventArgs e)

{

if(e.Button.Equals(BtnNew))

{

// Complete el código a continuación para llamar al evento OnNew firmado por el delegado de OnDBPerate.

}

}

}

Respuesta: if( OnNew != null )

OnNew( esto , e);

27. Analice el siguiente código y complete los espacios en blanco

string strTmp = "abcdefgXXXX"; Encoding.Default.GetBytes(strTmp).Length;

int j= strTmp.Length

Después de ejecutar el código anterior, i= j=

Respuesta: i=13, j=10

28. En el servidor SQLSERVER, hay dos campos ID y LastUpdateDate en la tabla dada. ID representa el número de transacción actualizado y LastUpdateDate representa la hora del servidor. la hora de la actualización Utilice una declaración SQL para obtener el último número de transacción actualizado

Respuesta: Seleccione ID DE la tabla1 Donde Última fecha de actualización = (Seleccione MAX(Última fecha de actualización) DE la tabla1)

29 Con base en el conocimiento relevante sobre seguridad de subprocesos, analice el siguiente código, ¿causará un punto muerto al llamar al método de prueba y explique brevemente el motivo?

prueba de anulación pública (int i)

{

bloquear(esto)

{

si ( igt; 10)

{

i--;

prueba(i); }

}

Respuesta: No se producirá ningún punto muerto (pero una cosa es que int se pasa por valor, por lo que cada vez que cambia, es solo una copia, por lo que no se producirá ningún punto muerto). ocurre bloqueo. Pero si int se reemplaza por un objeto, se producirá un punto muerto)

30. Hable brevemente sobre su comprensión de las tecnologías remotas y de servicios web bajo la arquitectura Microsoft .NET y sus aplicaciones prácticas.

Respuesta: WS puede utilizar principalmente HTTP para penetrar firewalls. La comunicación remota puede utilizar TCP/IP y transmisión binaria para mejorar la eficiencia.

31. La empresa requiere el desarrollo de un componente que herede la clase System.Windows.Forms.ListView, y requiere las siguientes funciones especiales: al hacer clic en el encabezado de cada columna del ListView, este se puede restablecer de acuerdo con el valor de cada fila de la columna en la que se hizo clic. Organiza todas las filas en la vista (ordenadas de manera similar a un DataGrid). Según su conocimiento, hable brevemente sobre sus ideas.

Respuesta: según el encabezado de la columna en la que se hace clic, se extrae el ID de la columna, se clasifica según el ID y luego se vincula al ListView.

32. Dado el siguiente archivo XML, complete el diagrama de flujo del algoritmo.

lt;FileSystemgt;

lt;DriverC gt;

lt; Nombre de archivo = "Command.com" gt;lt;/Filegt;

lt;/Dirgt;

lt;Archivo Nombre de archivo = "MSDOS.SYS" gt;lt;/Filegt;

lt;Archivo FileName="IO.SYS" gt;lt;/Filegt

lt;/DriverCgt

lt;/FileSystemgt; p>

lt;/FileSystemgt;

lt; p>

Dibuje un diagrama de flujo que atraviese todos los nombres de archivos (FileName) (utilice un algoritmo recursivo).

Respuesta:

void FindFile( Directorio d )

{

FileOrFolders = d.GetFileOrFolders(); p>foreach( FileOrFolder fof in FileOrFolders )

{

if( fof es Archivo )

Encontraste un archivo

else; if (fof es Directorio)

FindFile( fof );

}

}

33. Registros del 31 al 40 en la Tabla A (SQLServer, use el ID que crece automáticamente como clave principal. Nota: Los ID pueden no ser consecutivos.

Respuesta: Solución 1: seleccione los 10 primeros * de A donde la identificación no está (seleccione los 30 primeros ID de A)

Solución 2: seleccione los 10 primeros * de A donde la identificación gt; (seleccione max(id) de (seleccione los 30 principales id de A )como A)

34. El lenguaje orientado a objetos tiene _________, _________ y ​​_________

Respuesta: Encapsulación, herencia , polimorfismo.

35. Los objetos a los que se puede acceder mediante el recorrido foreach deben implementar la interfaz ____________________ o declarar el tipo de método ____________________.

Respuesta: IEnumerable, GetEnumerator.

36. ¿Qué es GC? ¿Por qué existe GC?

Respuesta: GC es un recolector de basura. Los programadores no tienen que preocuparse por la gestión de la memoria porque el recolector de basura se encarga de ello automáticamente. Para solicitar la recolección de basura, llame a uno de los siguientes métodos:

System.gc()

Runtime.getRuntime().gc()

37. s = new String("xyz"); ¿Cuántos objetos String se crean?

Respuesta: Dos objetos, uno es "xyx" y el otro es el objeto de referencia que apunta a "xyx".

38. ¿Cuál es la diferencia entre clase abstracta e interfaz?

Respuesta:

Una clase que declara la existencia de un método sin implementarlo se llama Clase abstracta (clase abstracta), se usa cuando desea crear una clase que incorpore algún comportamiento básico y declarar métodos para la clase, pero la clase no se puede implementar en la clase. No se pueden crear instancias de clases abstractas. Sin embargo, puede crear una variable cuyo tipo sea una clase abstracta y hacer que apunte a una instancia de una subclase concreta. No puede haber constructores abstractos ni métodos estáticos abstractos. Las subclases de la clase abstracta proporcionan implementaciones para todos los métodos abstractos en su clase principal; de lo contrario, también serían clases abstractas. En su lugar, implemente el método en una subclase. Otras clases que conozcan su comportamiento pueden implementar estos métodos en su clase.

La interfaz es una variante de la clase abstracta. En una interfaz, todos los métodos son abstractos. Se puede obtener herencia múltiple implementando dicha interfaz. Todos los métodos de la interfaz son abstractos y ninguno tiene un cuerpo de programa. Las interfaces solo pueden definir variables miembro finales estáticas. La implementación de una interfaz es similar a la creación de subclases, excepto que la clase implementadora no puede heredar el comportamiento de la definición de la interfaz. Cuando una clase implementa una interfaz particular, define (es decir, le da el cuerpo del programa) todos los métodos de esta interfaz. Luego puede llamar a los métodos de la interfaz en cualquier objeto de la clase que implemente la interfaz. Dado que existen clases abstractas, permite utilizar el nombre de la interfaz como tipo de variable de referencia. La vinculación dinámica normal tendrá efecto. Las referencias se pueden convertir hacia y desde tipos de interfaz, y el operador instancia de se puede utilizar para determinar si la clase de un objeto implementa la interfaz.

39. Para iniciar un hilo, ¿debe utilizar run() o start()?

Respuesta: Para iniciar un hilo, necesita llamar al método start() para crear. el procesador virtual representado por el subproceso en estado Ejecutable, lo que significa que puede ser programado y ejecutado por la JVM. Esto no significa que el hilo se ejecutará inmediatamente. El método run() puede detener un hilo generando un indicador de salida obligatoria.

40. ¿Pueden las interfaces heredar interfaces? ¿Pueden las clases abstractas implementar interfaces?

Respuesta: ¿Las interfaces pueden heredar interfaces? Las clases abstractas pueden implementar interfaces y si las clases abstractas pueden heredar clases de entidad, pero la premisa es que la clase de entidad debe tener un constructor claro.

41. ¿Se puede anular el constructor Constructor?

Respuesta: El constructor Constructor no se puede heredar, por lo que la Anulación no se puede anular, pero la Sobrecarga se puede anular.

42. ¿Se puede heredar la clase String?

Respuesta: La clase String es una clase final y no se puede heredar.

43. Hay una declaración de retorno en el intento {}, entonces, ¿se ejecutará el código finalmente {} inmediatamente después del intento? ¿Cuándo se ejecutará, antes o después del retorno? p>Respuesta: Se ejecutará antes del regreso.

44. Dos objetos tienen el mismo valor (x.equals(y) == true), pero pueden tener códigos hash diferentes.

Respuesta: No, hay