寫的實訓的內容并不是當天的內容,是之前幾天實訓的總結,好多內容還不完善,有好多東西是給自己總結方便以后看的,希望看到的小伙伴們不要嫌棄??
知識點與練習:
- 新建一個Person類:
1.在Person.h中進行變量與方法的聲明:
@interface Person : NSObject {
@public
NSString *_name;
NSInteger _age;
NSString *_gender;
}
- (void)sayHello;
- (void)eat;
- (void)setName:(NSString *)name age:(NSInteger)age gender:(NSString *)gender;
@end
2.Person.m中進行方法的實現:
- (void)sayHello{
NSLog(@"你好啊,我叫%@,我今年%ld歲了,性別%@",_name, _age,_gender);
}
- (void)eat{
NSLog(@"吃");
}
- (void)setName:(NSString *)name age:(NSInteger)age gender:(NSString *)gender{
_name = name;
_age = age;
_gender = gender;
//self代表自身(此時調用該方法的對象)
[self sayHello];
}
- 在主函數中進行對象的創建以及方法的調用:
#import <Foundation/Foundation.h>
#import "Person.h" //調用哪個類就得對其頭文件進行導入
int main(int argc, const char * argv[]) {
//C語言中的字符串前面加上一個@代表OC中的字符串對象,@代表OC對C的拓展
@autoreleasepool {
//NSLog(@"hello%d",10);
Person *p = [Person alloc]; //開辟內存空間
p = [p init]; //初始化
//與上邊兩步等價
Person *p1 = [[Person alloc]init];
p1->_name = @"張三";
p1->_age = 12;
p1->_gender = @"男";
NSLog(@"姓名:%@,年齡:%ld,性別:%@",p1->_name,p1->_age,p1->_gender);
//方法調用(誰去執行一個行為,被稱為一個對象調用一個方法)
//OC種方法的調用使用的是消息語法機制
//[消息接收者 消息];
[p1 sayHello];
[p1 eat];
[p1 setName:@"小喬" age:12 gender:@"女"];
[p1 sayHello];
}
return 0;
}
概念:
1.OC概述:
Objective-C簡稱OC,OC是C語言的擴充,并且OC是iOS和OS X操作系統的編程語言。
2.類:
具有相同特征和行為的事物的抽象。
3.對象:
對象是類的實例,萬事萬物皆對象。
類是對象的類型。
區分對象的黃金法則:當我們看到某個概念的時候如果每個人 的大腦中想到的都是同一個事物的時候,此時就是對象;反之則是類。
4.類和對象的定義:
類的定義:
1??面向對象的核心思想是類和對象。
2??OC中類的定義分為兩個部分:接口部分和實現部分。
3??接口部分:對外聲明類的特征和行為。(.h文件中)
4??實現部分:行為的具體實現。(.m文件中)
接口部分:
1??接口部分標志:@interface...@end 。
2??@interface...@end 的作用:聲明類的實例變量(成員變量)和方法,即特征和行為。
3??接口部分包含的內容:類名、父類名、實例變量、方法等。
實現部分:
1??實現部分標志:@implementation...@end。
2??@implementation...@end 的作用:類行為的具體實現(方法的實現)。
5.類的創建:
oc1.png
oc2.png
oc3.png
oc4.png
OC第一天實訓講的內容比較少,概念性的東西講的比較多,老師留的作業是創建15個類,進行方法的聲明,實現調用等的練習??,在這就不一一列出來了。學習要循序漸進,慢慢來嘛,誰也不是一口吃成個胖子的(這句話說完怎么感覺怪怪的??),期待最后看到你的進步,提前來個勝利的手勢??。