为了大家能比较清楚的了解新知识 我们就是用大家比较熟悉的java语言跟php语言做对比 来了解下obc吧
java中定义一个类的如下:
class Person{
String name;
int age;
void eat(){
}
static void study(int para1,int para2){
}
}
等等:定义了一个Person类 其中有2个属性跟一个方法 。
php中定义一个类如下:
class Person{
public $name;
public $age;
public function eat(){
}
}
其实obj的定义类的方式跟面向对象语言第一类的方式很类似,其中有一些小小的不同:
他定义类的方式如下:
#import <Foundation/Foundation.h>
@interface 类名:NSObject{
id name;
int age;
}
-(void) eat;
+(void)study:(int)para1 and:(int )para2;
接口文件告诉编译器 该操作时类的声明 同时我们需要引用import导入NSObject需要的文件的Foundation.h,确保程序能在founation中找到NSObject。
同时我们也可以在定义文件里面定义属性的get跟set方法 也可以使用obj本身提供的@property指令表示属性。这些属性通常是实例变量。当你在类的定义文件中使用@propery时
在实现文件中我们可以使用@synthesize引用属性 就可以使用obj自己本身定义的get跟set方法。其中的减号方法代表java中的实例方法 而加号方法表示java中的类方法