Mesaj, bir seçicinin adı ve bu seçicinin parametreleridir.
Seçici bir semboldür.
Yöntem, sınıftaki bir seçici tarafından tanımlanan bir kod parçasıdır.
Başka bir deyişle, [foo bar: baz]
" @selector(bar:)
parametresi ile çağrılan iletiyi baz
nesneye gönder" der foo
. Bu iletiyi birçok farklı nesneye gönderebilirsiniz.
Buna karşılık, yöntem bar:
bir için Foo
gibi görünebilir
-(int)bar:(int)n {
return n + 1;
}
ama FooTwo
görünüşe göre
-(int)bar:(int)n {
return n + 2;
}
(Umarım sentaks hakkım vardır; Objective-C'ye en son dokunduğumdan beri bir süre geçti.)
İletiyi gönderdiğinizde, Objective-C çekirdeği iletiyi foo
anlayıp anlamayacağına karar veren . Buna, seçicinin belirlediği bir yöntemi bulup bulamayacağına göre karar verir.
Aynı ada sahip iki yöntem ve bir mesaj.
Bir nesnenin belirli bir mesajı (veya mesaj kümesini) işlenmek üzere başka bir nesneye iletmesi de mümkündür. Bu durumda, bu proxy nesnesine o iletiyle eşleşecek yöntemi olmayan bir ileti gönderirsiniz ve proxy iletiyi kaydırılan nesnesine iletir.