S.h

#import <Foundation/Foundation.h>
/**
解决方案:
1.不用@public修饰
2.我们对象有访问和设置成员变量的两种操作
1>设置值
p->age = 10;
2>访问值
NSLog(@"%d",p->age); 现在要提供两个方法来进行设置值和访问值
1>设置成员变量
约定的格式:
- (void)set成员变量名(去掉下划线,首字母大写):(成员变量数据类型)成员变量名(去掉下划线);
- (void)setAge:(int)age; 2>访问成员变量
约定的格式:
- (成员变量数据类型)成员变量名(去掉下划线);
- (int)age;
*/ //.h文件时暴露在外面的,.m文件是隐藏的。 @interface Student : NSObject
{
int _age; // 年龄,成员变量又下划线,局部变量没有下划线。
NSString *_name; //名字
}
// 提供年龄的设置和访问的方法
- (void)setAge:(int)age;
- (int)age; // 设置和访问名字的方法
- (void)setName:(NSString *)name;
- (NSString *)name;
@end

S.m

#import "Student.h"

@implementation Student

// 提供年龄的设置和访问的方法
- (void)setAge:(int)age
{
if (age > && age < ) {
_age = age;
}else{
// age = 20;
_age = ;
}
} - (int)age
{
return _age;
} // 设置和访问名字的方法
// 比较两个字符串是否相同 - (BOOL)isEqualToString:(NSString *)aString;
- (void)setName:(NSString *)name
{ if ([name length] > ) {
if ([name isEqualToString:@"D大调"] ||[name isEqualToString:@"D大调方法"]) {
_name = @"佚名"; }else{
_name = name;
}
}
else
{
NSLog(@"请重新输入!");
} }
- (NSString *)name
{
return _name;
}
@end

最新文章

  1. 常用的 SQL语句------CRUD
  2. bootstrap系列学习(一)
  3. Jquery Ajax调用aspx页面方法 (转载)
  4. 【形式化方法:VDM++系列】3.基于VDM++的图书管理系统需求定义
  5. Java 可变参数
  6. python none,null,,,,,类型
  7. 解决ubuntu 14.04在显示屏电缆被拔出的问题
  8. DIV 实现可拖拽 功能(留档)
  9. poj_2503(map映射)
  10. spring-data-redis使用哨兵配置一主多从
  11. 剑指Offer_编程题_22
  12. QT4.8应用控制程序设计
  13. session持久化到sqlserver
  14. Python 3.4:Chromedrive,IEDriverServer,geckoDriver
  15. Linux内核分析——第四周学习笔记20135308
  16. PHP网站环境搭配: Apache Http+PHP+Mysql
  17. input元素默认选中设置
  18. StackStorm利用CORS null origin获得RCE (CVE-2019-9580)
  19. Datesheet 参数手册
  20. MySQL入门很简单: 1 数据库概述

热门文章

  1. VS2010安装EntityFramework5.0
  2. 远程连接mongodb出现 no route to host 和 Connection refused
  3. c++builder 代码输入助手
  4. 在PhpStorm9中与Pi的xdebug进行调试
  5. python scp
  6. does not support ASP.NET compatibility 错误
  7. inputs
  8. css之clear属性
  9. CodeForces 534B Covered Path (水题)
  10. 使用多个Worker的时候Odoo的系统日志配置