2016-08-26 11 views
-1

gettersとfunc getSomething()の違いは?

mFirstName変数のゲッターとインスタンスメソッドgetFirstName()の違いは何ですか?私は最初の、なぜ私は別のメソッドを取得する必要がありますか?

+2

*「別の取得方法が必要なのはなぜですか?」* - あなたはしません。そのコードは他の言語の文字通りの翻訳のように見えます。 Swiftの本の中の "Properties"を見てください。 –

答えて

0

変数のゲッターは常に実行されます。唯一の例外は、initの内部で変数を取得または設定する場合です。これはgetterとsetterを実装する迅速な方法です。 Javaのような言語にはこのオプションがありませんので、ゲッターとセッター関数を作成する必要があります。

あなたの変数にgetterとsetterを提供するIMOはより安全です。こうすることで、それらが常に呼び出されるようにすることができます。 getter関数とsetter関数があり、変数を直接変更してsetterとgetterを呼び出すことを忘れると、奇妙なエラーにつながる可能性があります。

+0

まず、あなたの答えをありがとう、しかし私は別の質問があります。私はJavaからSwiftにいくつかのコードを翻訳しています。以下のための公共の文字列getGradeByLabel(BigDecimalの割合){ :私は、Javaのgetterとsetterなど、いくつかのFUNCを持っている場合と(GradingSystemLabelToラベル:getLabels()).... は、どのように私はスウィフトでgetLabelsのようなものを書いたのでしょうか? –

+0

正確にはどういう意味ですか? forループ?それはラベルのラベルになります。しかし、SOにさえも、これらの質問に、より詳細に答えた他の質問があります。 – Yannick

+0

はい、ループ内のコードに正確に意味していますが、どのように翻訳しますか? 非常に助けていただきありがとうございます –

関連する問題