我在目标 C 中有一个类,它代表一个通用业务对象(为了我的问题,假设它是一个银行帐户)。我有 java C# 背景(仅供参考)。现在这个 bankAccount 有一个 enum 属性定义它是什么类型,加上一个 NSURl 属性
//this is in the bankAccount.h file
typedef enum {Checking, Savings, Investor} AccountType;
-(NSURL *)url;
现在用户可以创建一个新的银行账户并将枚举设置为相关类型。在分配他们的新银行帐户对象后,他们可能需要访问 url 属性,因此我必须为该属性实现一个 getter,它将正确初始化它。我的问题是,为了正确初始化 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 文件中,它在调用类中确实不知道正在创建的实例是什么。也许我很困惑,也许这是一个简单的答案,但我无法理解这个概念。
感谢帮助的家伙。