Delegate.Equals(Object) Метод

Определение

Определяет, принадлежат ли заданный объект и текущий делегат к одному типу, и одинаковы ли их целевые объекты, методы и списки вызовов.Determines whether the specified object and the current delegate are of the same type and share the same targets, methods, and invocation list.

public:
 override bool Equals(System::Object ^ obj);
public override bool Equals (object obj);
override this.Equals : obj -> bool
Public Overrides Function Equals (obj As Object) As Boolean

Параметры

obj
Object

Объект, который требуется сравнить с текущим делегатом.The object to compare with the current delegate.

Возвраты

Значение true, если obj и текущий делегат имеют одинаковые целевые объекты, методы и списки вызовов. В противном случае — значение false.true if obj and the current delegate have the same targets, methods, and invocation list; otherwise, false.

Исключения

Вызывающий объект не имеет доступа к методу, представленному делегатом (например, если метод является закрытым).The caller does not have access to the method represented by the delegate (for example, if the method is private).

Комментарии

Если два делегата имеют разные типы, они не считаются равными.If the two delegates are not of the same type, they are not considered equal.

Важно!

В .NET Framework версии 1,0 и 1,1 два делегата считаются равными, если их цели, методы и список вызовов равны, даже если делегаты имеют разные типы.In the .NET Framework version 1.0 and 1.1, two delegates were considered equal if their targets, methods, and invocation list were equal, even if the delegates were of different types.

Методы и целевые объекты сравниваются на равенство следующим образом:The methods and targets are compared for equality as follows:

  • Если два сравниваемых метода являются статическими и одинаковы для одного и того же класса, то методы считаются равными, а целевые объекты также считаются равными.If the two methods being compared are both static and are the same method on the same class, the methods are considered equal and the targets are also considered equal.

  • Если два сравниваемых метода являются методами экземпляра и одинаковы для одного и того же объекта, то методы считаются равными, а целевые объекты также считаются равными.If the two methods being compared are instance methods and are the same method on the same object, the methods are considered equal and the targets are also considered equal.

  • В противном случае методы не считаются равными, а целевые объекты также не считаются равными.Otherwise, the methods are not considered to be equal and the targets are also not considered to be equal.

Два списка вызовов считаются идентичными только в том случае, если они имеют одинаковый порядок, а соответствующие элементы из двух списков представляют один и тот же метод и целевой объект.Two invocation lists are considered identical only if they have the same order and the corresponding elements from the two lists represent the same method and target.

Безопасность

ReflectionPermission
При вызове поздней привязки с помощью таких механизмов InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]), как.when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Связанное перечисление:MemberAccessAssociated enumeration: MemberAccess

Применяется к

Дополнительно