//
// Person.h
// day13 #import <Foundation/Foundation.h> @interface Person : NSObject
{
// @public
int _age;
NSString *_name;
double _height;
} - (void)setAge:(int)age;
- (void)setName:(NSString *)name;
- (void)setHeight:(double)height; - (int)age;
- (double)height;
- (NSString *)name; - (void)test; @end
//
// Person.m
// day13
#import "Person.h" @implementation Person
- (void)setAge:(int)age
{
_age = age;
}
- (void)setHeight:(double)height
{
_height = height;
}
- (void)setName:(NSString *)name
{
_name = name;
}
- (int)age
{
return _age;
}
- (double)height
{
return _height;
}
- (NSString *)name
{
return _name;
}
- (void)test
{
NSLog(@"test");
}
@end
//
// main.m
// 点语法 #import <Foundation/Foundation.h>
#import "Person.h" int main(int argc, const char * argv[]) { Person *p = [Person new]; // p->_age = 30;
// p->_name = @"lnj";
// p->_height = 1.75;
//
// NSLog(@"age = %i, name = %@, height = %f", p->_age, p->_name, p->_height);
// [p setName:@"lnj"];
[p setAge:];
[p setHeight:1.75];
NSLog(@"age = %i, name = %@, height = %f", [p age], [p name], [p height]); // 如果给属性提供了getter和setter方法, 那么访问属性就又多了一种访问方式 , 点语法
// 点语法其实它的本质是调用了我们的setter和getter方法 ,(打断点会进去)
// 点语法是一个编译器的特性, 会在程序翻译成二进制的时候将.语法自动转换为setter和getter方法
// 如果点语法在=号的左边, 那么编译器会自动转换为setter方法
// 如果点语法在=号的右边, 或者没有等号, 那么编译器就会自动转换为getter方法
p.name = @"lnj";
[p setName:@"lnjjjj"];
p.age = ;
p.height = 1.75;//p->height = 1.75; 之前用的是->现在用.访问。
NSLog(@"age = %i, name = %@, height = %f", p.age, p.name, p.height);
[p age]; /*
点语法的注意点:
点语法一般用于给成员变量赋值, 如果不是给成员变量赋值一般情况下不建议使用, 但是也可以使用 */
p.test; // [p test];
return ;
}

oc17--点语法的更多相关文章

  1. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  2. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  3. 探索C#之6.0语法糖剖析

    阅读目录: 自动属性默认初始化 自动只读属性默认初始化 表达式为主体的函数 表达式为主体的属性(赋值) 静态类导入 Null条件运算符 字符串格式化 索引初始化 异常过滤器when catch和fin ...

  4. [C#] 回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性

    回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性 序 目前最新的版本是 C# 7.0,VS 的最新版本为 Visual Studio 2017 RC,两者都尚未进入正式阶段.C# 6.0 ...

  5. Velocity初探小结--velocity使用语法详解

    做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上 ...

  6. node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法

    1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...

  7. C#语法糖大汇总

    首先需要声明的是"语法糖"这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换:而且可以提高开发编码的效率,在性能上也不会带来损失.这让java开发人员羡慕 ...

  8. 值得注意的ibatis动态sql语法格式

    一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...

  9. Flex 布局教程:语法篇

    作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...

  10. postgresql 基本语法

    postgresql数据库创建/修改/删除等写入类代码语法总结: 1,创建库 2,创建/删除表 2.1 创建表 create table myTableName 2.2 如果表不存在则创建表 crea ...

随机推荐

  1. invoke与call

    “调用一个委托实例” 中的 “调用” 对应的是invoke,理解为 “唤出” 更恰当.它和后面的 “在一个对象上调用方法” 中的 “调用” 稍有不同,后则对应的是call.在英语的语境中,invoke ...

  2. 苹果html上传后图片旋转问题

    最近做移动web项目但是遇到在苹果设备上html上传图片后,图片传到后台是旋转的 旋转角度不一,因此再次 读取照片时,无法正常显示,目前已经找到解决方法,至于原因看不太懂 翻译过来也是完全按照单词翻译 ...

  3. Spring Boot (9) mybatis全注解化

    ORM对比图 框架对比 Spring JDBC Spring Data Jpa Mybatis 性能 性能最好 性能最差 居中 代码量 多 少 多 学习成本 低 高 居中 推荐指数 ❤❤❤ ❤❤❤❤❤ ...

  4. Laravel5.1学习笔记4 控制器

    HTTP 控制器 简介 基础控制器 控制器中间件 RESTful 资源控制器 隐式控制器 依赖注入和控制器 路由缓存 简介 除了在单一的 routes.php 文件中定义所有的请求处理逻辑之外,你可能 ...

  5. 复习java基础第六天(IO)

    一:File 类 • 输入:读取外部数据(磁盘.光盘等存储设备的数据)到程序(内存)中.  • 输出:将程序(内存)数据输出到磁盘.光盘等存储设备中 • Java 的 IO 流主要包括输入.输出两种 ...

  6. 英语之ASIC

    ASIC(Application Specific Integrated Circuit) = 专用集成电路 assign = [计][数] 赋值 assign a value 分配一个值:赋值

  7. vue-awesome-swiper组件的使用

    一.轮播图组件是这样安装的 npm i --save-dev vue-awesome-swiper main.js里面 import 'swiper/dist/css/swiper.css' impo ...

  8. Fish:Linux中比bash或zsh更好用的Shell

    Fish是一个智能且用户友好的命令行shell,适用于macOS,Linux和其他家族.fish包含语法突出显示.根据你键入字符自动提示autosuggest-as-type和花式选项卡完成等功能,无 ...

  9. BPM结束任务

    var pi = tw.system.findProcessInstanceByID("158");for(var i=0; i<pi.tasks.length; i++) ...

  10. 慕课网页面app的滑动

    #coding=utf-8from appium import webdriver def get_driver(): desc={ "platformName":"An ...