Object-C学习笔记(二)---类class
2013-11-14 15:32
459 查看
类class
Object-C是一种面向对象的语言,但是Object-C的类的定义分为两部分,一部分是接口@interface部分,另外一部分是 实现@implementation 部分,接口部分个人感觉跟C的头文件的作用类似,主要定义了一些类的成员和方法的原型,而实现部分则是对这些接口中声明的具体实现。
格式
@interface的格式为
@interface 类名 : 基类 { 成员变量列表 } 方法原形列表 @end
@implementation 的格式为
@implementation 类名 类型 函数名:参数列表 -(返回值类型)方法名:参数列表 { 方法体; } @end
Object-C的函数格式
-(返回值类型)方法名:参数列表 { 方法体; }注意:Object-C 的类方法由 -
开始(如果以 + 开始,则表示该方法必须用类名调用,类似于PHP/java/C++/C#的静态函数)
例子:
//
// Test.h
// ObjectC_02
// Autor:DRAGON
// Created by 5016 on 13-11-13.
// Copyright (c) 2013年 dradon. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Test : NSObject
{
NSString *_name;
}
-(void)print;
-(void)test:(int) score;
@property int age;//自动生成getter和setter
@end
//
// Test.m
// ObjectC_02
// Autor:DRAGON
// Created by 5016 on 13-11-13.
// Copyright (c) 2013年 dradon. All rights reserved.
//
#import "Test.h"
@implementation Test
@synthesize age;//自动生成getter和setter
/*
*方法:print
*功能:打印一些数据
*/
-(void)print
{
static int i = 0;
NSLog(@"%d",i);
i++;
NSString *n = @"dragon";
_name = n;
NSLog(@"我的名字是%@",_name);
age = 23;
NSLog(@"今年%d岁",age);
}
/*
*方法:test
*功能:打印出成绩的等级
*/
-(void) test:(int) score
{
if(score>=0 && score<60)
{
NSLog(@"不及格");
}
else if(score>=60 && score<70)
{
NSLog(@"不及格");
}
else if(score>=70 && score<80)
{
NSLog(@"中等");
}
else if(score>=80 && score<90)
{
NSLog(@"良好");
}
else if(score>=90 && score<=100)
{
NSLog(@"优秀");
}
else
{
NSLog(@"错误");
}
}
@end
//
// main.m
// ObjectC_02
//
// Created by 5016 on 13-11-13.
// Copyright (c) 2013年 dradon. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Test.h"
int main(int argc, const char * argv[])
{
@autoreleasepool {//自动释放内存
Test *test = [[Test alloc]init];//实例化对象
[test print];//调用无参数函数
Test *test1 = [[Test alloc]init];//实例化对象
[test1 print];//调用无参数函数
[test1 test:95];//调用有参数函数
}
return 0;
}
相关文章推荐
- scala学习笔记3-Actor、case class和object、loop和react的使用
- 【论文学习笔记】Class-Specific Hough Forests For Object Detection
- Scala学习笔记 --- scala中class与object
- Scala学习笔记(二) object class
- Object-C 学习笔记(十九)---#include 、#import 、@class
- Case class和Case object代码实战解析之Scala学习笔记-20
- Object-C学习笔记八-----Foundation Kit快速教程NSArray NSEnumerator NSDictioary NSNumber NSValue NSNull
- scala学习笔记07--样本类(case class)和模式匹配
- python学习笔记之二---object
- Object-c学习之路三(@class与#import的区别)
- JavaScript学习笔记2-五种原始数据类型和Object对象类型
- 【原】java学习笔记 【二】 常见错误 Class files on classpath not found or not accessible for
- jQuery学习笔记—— .is() VS .hasClass()
- Python学习笔记:学习爬虫时遇到的问题TypeError: cannot use a string pattern on a bytes-like object 与解决办法
- python学习笔记1---class
- 【scala 笔记(6)】 类(class)和对象(object)
- OAF学习笔记-JAVA Entity Object 之 Create data(深入EO系列)
- (原创)c#学习笔记09--定义类02--System.Object
- Object-c学习笔记
- Object-c 学习笔记