基本:
概念:對象 類 封裝 多態 主要語言有 C++,Java,OC面向過程與面向對象的區別
基本代碼:
// OC打印
NSLog(@Lanou);
// NSInteger 整型,CGFloat 浮點型,NSString 字符串
NSInteger i = 100;
NSLog(@i = %ld,i);
CGFloat f = 3.14;
NSLog(@f = %g,f);
// OC的字符串可以放中文
NSString *str= @喲喲;
NSLog(@%@,str);
// OC的數組
// 與for循環遍歷一樣,直接用NSLog進行遍歷
NSArray *arr = @[@1,@2,@3];
NSLog(@%@,arr);
for (NSInteger i = 0 ; i < 3; i++) {
NSLog(@%@,arr[i]);
}
@interface Student : NSObject
@end
實現
// 對應的實現文件
@implementation Student
// 1.分配空間
Student *stu = [Student alloc];
// 2.初始化
stu = [stu init];
// 可以把上兩個步驟合成一個語句
Student *stu = [[Student alloc] init];
初始化中返回的self指的是返回完成的自己
- (id)init
{
_stuName = @俊寶寶;
_stuSex = @女;
_stuHobby = @男;
_stuAge = 20;
_stuScore = 100;
return self;
}
Student *stu = [[Student alloc] init];
[stu sayHi];
@interface Student : NSObject
{
// 成員變量的可見度
@public
// 成員變量,或實例變量
NSString *_stuName; // 名字
NSInteger _stuAge; // 年齡
NSString *_stuSex; // 性別
CGFloat _stuScore; // 分數
NSString *_stuHobby;// 愛好
}
@end
操作成員
// 操作成員變量
// 對象通過->來訪問自己的成員變量
NSLog(@%ld,stu -> _stuAge);
// 修改年齡
stu -> _stuAge = 100;
NSLog(@%ld,stu -> _stuAge);
// 修改姓名,直接修改字符串直接賦值
stu -> _stuName = @切克鬧;
NSLog(@%@,stu -> _stuName);
注意:public修飾的實例變量,可以直接使用” ->”訪問
main.m
int main(int argc, const char * argv[]) {
// 通過手機的類,創建對象,並且對對象的成員變量進行修改
MobilePhone *mPhone = [[MobilePhone alloc] init];
mPhone -> _phoneBrand = @samsung;
mPhone -> _phoneColor = @白色;
mPhone -> _phoneModel = @S100;
mPhone -> _phonePrice = 4800;
mPhone -> _phoneSize = 1080;
NSLog(@品牌為%@,顏色:%@,型號:%@,價格:%ld,屏幕:%ld,mPhone->_phoneBrand,mPhone->_phoneColor,mPhone->_phoneModel,mPhone->_phonePrice,mPhone->_phoneSize);
return 0;
}
MobilePhone.h
@interface MobilePhone : NSObject
{
@public
NSString *_phoneBrand;
NSString *_phoneModel;
NSInteger _phoneSize;
NSString *_phoneColor;
NSInteger _phonePrice;
}
- (void)buyPhone;
- (void)call;
- (void)sendMessage;
- (void)surfInternet;
- (void)watchVideo;
// 寫一個用來打印全部信息的功能
- (void)sayHi;
@end
MobilePhone.m
@implementation MobilePhone
- (void)buyPhone
{
NSLog(@買了個手機);
}
- (void)call
{
NSLog(@打了個電話);
}
- (void)sendMessage
{
NSLog(@發了個短信);
}
- (void)surfInternet
{
NSLog(@上了個網);
}
- (void)watchVideo
{
NSLog(@看了個視頻);
}
// 重寫電話的初始化方法
- (id) init
{
_phoneBrand = @Apple;
_phoneColor = @red;
_phoneModel = @S5;
_phonePrice = 4000;
_phoneSize = 1080;
return self;
}
- (void)sayHi
{
NSLog(@%@ , %@ ,%@ ,%ld ,%ld ,,_phoneBrand,_phoneColor,_phoneModel,_phonePrice,_phoneSize);
}
文章總結了今天學習的基本內容