Sea A una clase con algunos miembros como x, y, z:¿Cuál es el comportamiento predeterminado del Método Equals?
Class A {
int x;
int y;
String z;
...
}
A es un objeto de modo que hereda los "es igual a" funciones definidas en objeto. ¿Cuál es el comportamiento predeterminado de esta función? ¿Verifica la igualdad de los miembros o verifica la igualdad de referencia?
Las cosas son en realidad más complicado para los tipos de valor: no es escapadas biwise comparación de igualdad. Consulte esta pregunta para obtener detalles http://stackoverflow.com/q/8315656/129073 – Gebb
La secuencia es especial. string.equals es una igualdad bit a bit, mientras que string es un tipo de referencia. –
@WillYu No igualdad de bits. Prueba si los personajes son iguales. La igualdad en términos de bits significaría que todos los metadatos .NET (como si la cadena está interna o no) serían los mismos. Tampoco es especial (en este sentido), simplemente anula Equals y sobrecarga el operador de igualdad (in). La implementación predeterminada para ello seguiría siendo la igualdad de referencia. – Aidiakapi