Junior — Middle
Yöntemleri geçersiz kılarken, imza içinde farklı parametre isimleri kullanabilir miyiz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Swift'te metodları geçersiz kılarken, parametre isimleri farklı kullanılabilir, ancak derleyici için önemli olan dış parametre isimleri (external parameter names), iç parametre isimleri (internal parameter names) değildir.
Bir yöntemi geçersiz kılarken, dış arayüzün uyumlu olması gerekir ki, yöntem doğru şekilde geçersiz kılınabilsin. İç parametre isimleri farklı olabilir, çünkü bunlar yalnızca metodun gövdesi içinde görünür.
Örnek:
class Parent {
func greet(name personName: String) {
print("Hello, \(personName)")
}
}
class Child: Parent {
override func greet(name friendName: String) { // dış parametre "name" uyumlu
print("Hi, \(friendName)")
}
}
Burada, dış parametre name uyumlu, iç isimler (personName ve friendName) farklıdır — bu uygundur.