Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android iOS开发中的Getter/setter类_Android_Ios - Fatal编程技术网

Android iOS开发中的Getter/setter类

Android iOS开发中的Getter/setter类,android,ios,Android,Ios,我正在寻找创建一个应用程序,我已经为Android的iOS。我在Android应用程序中有一个用户类,但我不确定如何在iOS上实现这一点。android中的类如下所示: public class User { protected int score; public User() { score = 0; } public long getScore() { return score; } pu

我正在寻找创建一个应用程序,我已经为Android的iOS。我在Android应用程序中有一个用户类,但我不确定如何在iOS上实现这一点。android中的类如下所示:

public class User {

    protected int score;

    public User() {
            score = 0;
    }

    public long getScore() {
            return score;
    }

    public User getScore(int score) {
            this.score = score;
            return this;
    }

    public int changeScore(int deltaScore) {
            this.score += deltaScore;

            return this.score;
    }

}

你需要切换语言。您将无法在iOS中使用完全相同的类。您将有一个Objective-C类,其标题如下所示:

@interface User: NSObject {
    int score;
}
@property (assign) int score;
- (int) changeScore:(int)deltaScore;
@end
以及一个如下所示的定义文件:

@implementation User
@synthesize score
- (int) changeScore:(int)deltaScore
{
    self.score += deltaScore;
    return self.score;
}
@end

我认为你应该开始读一本关于目标C的书来掌握基本知识。。。这只是我的拙见。您甚至可以省略分数值(int score;)的声明,而只使用属性声明。编译器将在编译期间生成相应的属性。不要忘记初始将score设置为零的init方法。严格来说,这不是必需的;在分配实例时,Objective-C中的所有IVAR都保证设置为0。但是,仍然建议插入一个标准的初始值设定项,并显式地将该值设置为零,作为记录意图的一种方法。