Objective-C 学习笔记(1)
文件描述:
.h 类的声明文件,用户声明变量、函数(方法)
.m 类的实现文件,用户实现.h中的函数(方法)
类的声明使用关键字 @interface、@end
类的实现使用关键字@implementation、@end
Code:
------------------------------------
项目文件:
(OS X -> Command Line Tool)
main.m
student.h
studen.m
//
// main.m
// OC的类学习
//
// Created by loong on 14-10-25.
// Copyright (c) 2014年 loong. All rights reserved.
// #import <Foundation/Foundation.h> #import "student.h" int main(int argc, const char * argv[]) {
@autoreleasepool { // 创建一个对象
// [student alloc] 调用student类中的 alloc 静态函数
// [[student alloc] init] 在返回的类型中再次调用 init 函数
student* std = [[student alloc] init];
[std setAge:];
int age = [std age]; NSLog(@"age is: %i", age); [std setNo: :]; NSLog(@"age is: %i,no is: %i", [std age], [std no]);
//[std release];
}
return ;
}
//
// student.h
// OC的类学习
//
// Created by loong on 14-10-25.
// Copyright (c) 2014年 loong. All rights reserved.
// // 导入头文件
#import <Foundation/Foundation.h> // .h 文件只是用来声明那些变量和函数
// @interface 声明一个类
@interface student: NSObject { // 成员变量要声明在下面的大括号中 {}
int _age; // 成员变量使用_开头
int _no;
} // age的get方法
// - 代表动态方法、 + 代表静态方法 (static)
- (int) age;
- (void) setAge:(int)age; // 同时设置两个参数
- (int) no;
- (void) setNo:(int)age : (int) no; @end
//
// student.m
// OC的类学习
//
// Created by loong on 14-10-25.
// Copyright (c) 2014年 loong. All rights reserved.
// #import "student.h" @implementation student - (int) age {
return age;
} - (void) setAge:(int) newAge {
age =newAge;
} // =========== - (int) no {
return no;
}
- (void) setNo:(int)newAge :(int)newNo {
age = newAge;
no = newNo;
}
@end
// PS: 在 oc 中关于 . 的描述(解释)
student.age 等同于 [student getAge]
student.age = 5; 等同于 [student setAge:5]
Objective-C 学习笔记(1)的更多相关文章
- Objective -C学习笔记之字典
//字典:(关键字 值) // NSArray *array = [NSArray array];//空数组 // NSDictionary *dictionary = [NSDictionary d ...
- Objective -C学习笔记 之copy(复制)
//自定义类对象实现copy需要遵守copy协议(否则程序崩溃),实现必须实现的协议方法,里面的代码就决定了你的copy是深是浅 #import <Foundation/Foundation.h ...
- objc_msgSend消息传递学习笔记 – 消息转发
该文是 objc_msgSend消息传递学习笔记 – 对象方法消息传递流程 的基础上继续探究源码,请先阅读上文. 消息转发机制(message forwarding) Objective-C 在调用对 ...
- ufldl学习笔记和编程作业:Softmax Regression(softmax回报)
ufldl学习笔记与编程作业:Softmax Regression(softmax回归) ufldl出了新教程.感觉比之前的好,从基础讲起.系统清晰,又有编程实践. 在deep learning高质量 ...
- ESP32学习笔记(一) 环境搭建与下载
ESP32学习笔记(一) 环境搭建与下载 作者:Nevel 博客:nevel.cnblogs.com 转载请保留出处 前几天刚入手了ESP32模块,趁着放假有时间,我们先把ESP32的编译环境搭建好 ...
- LDA主题模型学习笔记5:C源代码理解
1.说明 本文对LDA原始论文的作者所提供的C代码中LDA的主要逻辑部分做凝视,原代码可在这里下载到:https://github.com/Blei-Lab/lda-c 这份代码实现论文<Lat ...
- 深度学习笔记(七)SSD 论文阅读笔记简化
一. 算法概述 本文提出的SSD算法是一种直接预测目标类别和bounding box的多目标检测算法.与faster rcnn相比,该算法没有生成 proposal 的过程,这就极大提高了检测速度.针 ...
- 深度学习笔记(七)SSD 论文阅读笔记
一. 算法概述 本文提出的SSD算法是一种直接预测目标类别和bounding box的多目标检测算法.与faster rcnn相比,该算法没有生成 proposal 的过程,这就极大提高了检测速度.针 ...
- ufldl学习笔记与编程作业:Softmax Regression(vectorization加速)
ufldl学习笔记与编程作业:Softmax Regression(vectorization加速) ufldl出了新教程,感觉比之前的好.从基础讲起.系统清晰,又有编程实践. 在deep learn ...
- ufldl学习笔记与编程作业:Logistic Regression(逻辑回归)
ufldl学习笔记与编程作业:Logistic Regression(逻辑回归) ufldl出了新教程,感觉比之前的好,从基础讲起.系统清晰,又有编程实践. 在deep learning高质量群里面听 ...
随机推荐
- java.lang.ClassNotFoundException
在项目的properties中的Java Build Path里将Order and Export里的类库勾选上.
- Tomcat遇到”Error listenerStart”或”Error filterStart”问题且无详细日志时的log配置.
昨天部署web应用到Tomcat之后,无法成功启动,并且控制台没有详细的错误信息,顶多就两行提示信息,例如:严重: Error listenerStart严重: Context [/lizongbo] ...
- 属性readwrite,readonly,assign,retain,copy,nonatomic
copy:建立一个索引计数为1的对象,然后释放旧对象 对NSString对NSString 它指出,在赋值时使用传入值的一份拷贝.拷贝工作由copy方法执行,此属性只对那些实行了NSCopying协议 ...
- iOS基础CGAffineTransform的简单使用
CoreGraphics框架中的CGAffineTransform类可用于设定UIView的transform属性,控制视图的缩放.旋转和平移操作: 另称放射变换矩阵,可参照线性代数的矩阵实现方式0. ...
- Github托管代码步骤
总结一下Github上项目托管步骤: Step 1:注册Github帐号,并创建一个repository,假如仓库名为test: Step 2:安装本地Git: sudo apt-get instal ...
- redis 在centos下的安装部署
安装的redis版本是 redis-3.0.2 请严格按照以下步骤进行 可以免除以下错误 1 make[2]: cc: Command not found 异常原因:没有安装gcc 解决方案:yum ...
- 通过外部接口 根据ip获取城市名
3种接口 淘宝/百度/不知名/ 推荐淘宝接口 ip自个去获取,下附带php 获取ip的示例 function getIP() { static $realip; if (isset($_SERVE ...
- ORA-10456:cannot open standby database;media recovery session may be in process
http://neeraj-dba.blogspot.com/2011/10/ora-10456-cannot-open-standby-database.html Once while star ...
- sql loader
vi append.sh #!/bin/bash sqlldr userid=bm_weihu/itms_xianwan control=input2.ctl vi input2.ctl LOAD D ...
- hadoop的API对HDFS上的文件访问
这篇文章主要介绍了使用hadoop的API对HDFS上的文件访问,其中包括上传文件到HDFS上.从HDFS上下载文件和删除HDFS上的文件,需要的朋友可以参考下hdfs文件操作操作示例,包括上传文件到 ...