0

我努力理解 Core Data 的实现。

当我检查核心数据实现时,我遇到了上面的代码

在 AppDelegate.m

@synthesize managedObjectContext = __managedObjectContext;


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    NSManagedObjectContext *context = [self managedObjectContext];
..


- (NSManagedObjectContext *)managedObjectContext
{
    if (__managedObjectContext != nil) {
        return __managedObjectContext;
    }

    NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
    if (coordinator != nil) {
        __managedObjectContext = [[NSManagedObjectContext alloc] init];
        [__managedObjectContext setPersistentStoreCoordinator:coordinator];
    }
    return __managedObjectContext;
}

有一个属性为@synthesize managedObjectContext = __managedObjectContext;

并且有一个函数 - (NSManagedObjectContext *)managedObjectContext

它如何在它们之间创建关系,如何/在哪里调用 managedObjectContext 函数。

4

1 回答 1

0

__managedObjectContext 是一个实例变量。

managedObjectContext 是 __managedObjectContext 的 getter 方法。它允许您通过例如 self.managedObjectContext 获取 __managedObjectContext。

实例变量的访问通常通过其 setter 和 getter 方法完成。

于 2013-09-06T21:48:15.323 回答