黑马程序员 01-点语法

———Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ———

1、利用点语法替换set方法和get方法

1> 方法调用

  Student *student1 = [Student new];

  [stu setAge: 20];       //调用set方法

  int age = [stu age];   //调用get方法

2> 点语法

  stu.age = 20;

  int age = stu.age;

2、点语法的本质

1> 点语法的本质还是方法调用(调用set方法和get方法)。

2> 当使用点语法时,编译器会自动展开成相应地方法

  stu.age = 10;  展开为 [stu setAge: 10];

  int age = stu.age;  展开为 int age = [stu age];

3> 在使用点语法的时候:在 = 号左边使用点语法时,调用的是set方法;其他的地方使用都是调用get方法。

4> 使用点语法的时候,. 后面的名称是对应的成员变量去掉下划线后的部分。

5>点语法只能调用set get 方法

  再看几个例子,加深理解:

  [girl setName: @"玲玲"];  =>  girl.name = @"玲玲";

  [girl setAge: 20];            =>   girl.age = 20;

  [girl setHeight: 165];      =>   girl.height = 165;

3、点语法死循环注意

1>调用set方法,

- (void)setAge:(int)age

{

  NSLog(@"setAge:");

  //会引发死循环

  //self.age = age; //[self setAge:age];

  //正确地写法

  _age = age;

}

2> 调用get方法

- (int)age

{

  //会引发死循环

  //return self.age;//[self age];

  //正确写法

  return _age;

}

时间: 2024-10-12 17:16:36

黑马程序员 01-点语法的相关文章

【黑马程序员】————面向对象语法2

一.      set方法和get方法 1.          set方法和get方法的使用场合 @public的成员可以被随意赋值,应该使用set方法和get方法来管理成员的访问(类似机场的安检.水龙头过滤,过滤掉不合理的东西),比如僵尸的生命值不能为负数 成员变量尽量不要用@public 2.          set方法 1)       作用:提供一个方法给外界设置成员变量值,可以在方法里面对参数进行相应过滤 2)       命名规范: 1> 方法名必须以set开头 2> set后面

【黑马程序员】————面向对象语法1

一.  面向对象和面向过程思想 OC是面向对象的,C是面向过程的.面向对象和面向过程只是解决问题的两种不同思想 常用术语 面向过程 Procedure Oriented 面向对象 Object Oriented,简称OO 面向对象编程 Object Oriented Programming,简称OOP 二.  类和对象的关系 面向对象中有2个非常重要的概念:类和对象 OC中的面相对象 1)      OC中的类相当于图纸,用来描述一类事物.也就是说,要想创建对象,必须先有类 2)      OC

黑马程序员-OC特有语法:分类category,给NSString增加方法计算字符串中数字的个数

1:分类的使用场景:想对一个类,扩充一些功能,而又不改变原来类的模型,也不用继承,这时OC中的特有语法:分类可以做到: 当然分类也是一个类,也需要声明和实现,声明在.h文件中,实现在.m文件中,格式如下 // 声明 @interface  类名  (分类名称) @end // 实现 @implementation 类名 (分类名称) @end 2:分类的好处,当一个类比较庞大时,不同的部分可以放到不同的分类中,也方便团队中类的开发: 3:分类使用注意: a:分类不能增加成员变量,只能对原类增加方

黑马程序员——Java基础语法(一) --- 关键字、标识符、注释、常量和变量、运算符

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 本篇博文主要总结java的基础语法,主要的内容包括:关键字.标识符.注释.常量和变量.运算符几部分. 一.关键字 关键字是被Java语言赋予了特殊含义的单词.关键字中所有的字母都是小写. java中的关键字主要包括如下几部分: 1.用于定

黑马程序员 ——ios点语法和类的三大特性

@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); 一.点语法 (一)认识点语法

黑马程序员—OC点语法和成员变量作用域

一.点语法 1.OC中点语法是方便从事别的语言开发的程序员迅速的转到OC开发当中,先看下面这个例子: 1 // 声明一个Person类 2 @interface Person : NSObject 3 { 4 int _age; 5 NSString *_name; 6 } 7 - (void)setAge:(int)age; 8 - (int)age; 9 @end 10 11 // 实现Person类 12 @implementation Person 13 - (void)setAge:(

黑马程序员---------《基础语法》笔记

mac ox 基础介绍 1.常用的Unix指令 ls-l 列出当前路径的所有文件cd 目录转换pwd 显示当前路径mkdir 新建目录touch 创建文件open 打开文件\文件夹who 显示当前用户名clear 清屏按下Tab键,可以自动补齐指令名称.文件名.文件夹名等 2.Mac的基本操作 DOCK:桌面下方的快捷应用 DOCK的设置:可以根据自己喜好设置DOCK的风格 3.常用快捷键: 拷贝:cmd+c粘贴:cmd+v回退:cmd+z保存: cmd+s关闭窗口:cmd+w退出程序:cmd+

黑马程序员 00-OC基本语法概述

1.OC简介 Objectuve-C 简称OC,其中Objective是面向对象的意思,即面向对象C. C语言的基础上,增加了一层最小的面向对象的方法(保留了面向对象语法的精华部分) 完全兼容C语言 以下代码写在OC源文件(.m文件)中,说明OC程序完全兼容C语言 #include <stdio.h> // OC程序的入口:main函数 // OC程序完全兼容C语言 int main(intargc, const char* argv[]) { printf("第1个OC程序\n&q

黑马程序员—16-oc核心语法

一.    变量作用域 l  变量的作用域主要分为四种: u  (1)@public (公开的)在有对象的前提下,任何地方都可以直接访问. u  (2)@protected (受保护的)只能在当前类和子类的对象方法中访问 u  (3)@private (私有的)只能在当前类的对象方法中才能直接访问 u  (4)@package (框架级别的)作用域介于私有和公开之间,只要处于同一个框架中就可以直接通过变量名访问 l  使用注意和补充 u  (1)在类的实现即.m文件中也可以声明成员变量,但是因为

黑马程序员— OC核心语法之构造方法、Category分类、类的本质、description和SEL

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 上一章我们学习了OC的一些核心语法,初步了解了OC作为一门开发语言的一些较为深层次的知识.本章我们继续学习OC的核心语法,主要包括OC的构造方法,Category分类,类的本质及深入研究,以及description关键字和SEL关键字. 第一讲     构造方法 1. 构造方法 构造方法是用来初始化对象的方法,是一个对象方法,以减号"-"开头,构造方法其实就是init方法,初始化完毕