私は、一般的なビジネスオブジェクトを表すObjective Cのクラスを持っています(私の質問のために、それは銀行口座だとしましょう)。私はJavaC#のバックグラウンド(FYI)を持っています。これで、このbankAccountには、タイプを定義するenumプロパティと、NSURlプロパティがあります。
//this is in the bankAccount.h file
typedef enum {Checking, Savings, Investor} AccountType;
-(NSURL *)url;
これで、ユーザーは新しい銀行口座を作成し、列挙型を関連するタイプに設定できます。新しい銀行口座オブジェクトを割り当てた後、urlプロパティにアクセスする必要があるかもしれないので、適切に初期化するそのプロパティのゲッターを実装する必要があります。ここでの私の質問は、urlプロパティを正しく初期化するために、呼び出し元のクラスが自分の銀行口座に対して作成した銀行口座の種類をどのように知ることができるかということです。
今のように、これは私がbankaccount.mファイルにURLを実装する方法です:
-(NSURL *)url {
if (url != NULL) {
return url;
}
NSString *filePath;
// figure out the file path base on account type
switch (AccountType) {
}
return url;
}
これはBankaccount.mファイルにあることに注意してください。このファイルは、作成されているインスタンスが何であるかを呼び出し元のクラスで実際には認識していません。多分私は混乱していて、それは単純な答えかもしれませんが、私はこの概念に頭を悩ませることはできません。
ヘルプの人に感謝します。