OC之成员变量封装

简介:

#import<Foundation/Foundation.h>

@interface Student : NSObject

{

    // 成员变量尽量不要用@public

    // @public

    int age;

    //@public

    // 只读(readonly):只允许外界访问我的no,不允许外界修改我的no

    int no; // 只需要提供get方法

}

 

/*

 set方法

 1.作用:提供一个方法给外界设置成员变量值,可以在方法里面对参数进行相应过滤

 2.命名规范:

 1方法名必须以set开头

 2set后面跟上成员变量的名称,成员变量的首字母必须大写

 3)返回值一定是void

 4一定要接收一个参数,而且参数类型跟成员变量类型一致

 5形参的名称不能跟成员变量名一样

 */

- (void)setAge:(int)newAge;

/*

 get方法

 1.作用:返回对象内部的成员变量

 2.命名规范:

 1肯定有返回值,返回值类型肯定与成员变量类型一致

 2方法名跟成员变量名一样

 3不需要接收任何参数

 */

- (int)age;

- (void)study;

@end

 

 

@implementation Student

// set方法的实现

- (void)setAge:(int)newAge

{

    // 对传进来的参数进行过滤

    if (newAge <= 0)

    {

        newAge = 1;

    }

    age = newAge;

}

 

- (int)age

{

    return age;

}

 

 

- (void)study

{

    NSLog(@"%d岁的学生在学习",age);

}

@end

 

int main()

{

    Student *stu = [Student new];

    //stu->age =-10;

    //stu->age = 10;

    [stu setAge:10];

    NSLog(@"学生的年龄是%d", [stu age]);

    //[stu study];

    return 0;

}

目录
相关文章
|
存储 安全 生物认证
强密码策略之减少字典攻击风险
【8月更文挑战第14天】
455 2
|
SQL Java 数据库
2、Mybatis-Plus 测试增、删、改、查
这篇文章是关于使用Mybatis-Plus进行数据库的增删改查操作的本地测试,包括创建数据库表、添加数据、创建使用lombok的实体类、添加mapper接口以及编写测试代码进行基本的数据库操作验证。
2、Mybatis-Plus 测试增、删、改、查
|
人工智能 安全 Linux
龙蜥社区首推 AI 原生操作系统路线,三大重磅计划协同生态布局未来
第二届龙蜥大会圆满落幕,龙蜥操作系统装机量突破800万。
|
前端开发 JavaScript 数据可视化
Python+Dash快速web应用开发——基础概念篇
Python+Dash快速web应用开发——基础概念篇
521 3
|
存储 安全 数据安全/隐私保护
强密码策略之提高多账户安全性
【8月更文挑战第14天】
423 2
|
机器学习/深度学习 C语言
【C语言篇】递归详细介绍(基础概念习题及汉诺塔等进阶问题)
要保持最小的步数,每一次汉诺塔问题(无论是最初还是递归过程中的),如果此时初始柱盘子数为偶数,我们第一步是把最上面的盘子移动到中转柱,如果为奇数,我们第一步则是将其移动到目标柱。
319 0
【C语言篇】递归详细介绍(基础概念习题及汉诺塔等进阶问题)
|
Ubuntu 数据管理 Linux
Linux系统要求
【8月更文挑战第9天】Linux系统要求
748 1
|
算法 网络协议 Linux
探索Linux命令idn:处理国际化域名
`idn`命令在Linux中用于处理国际化域名,转换成ASCII兼容的ACE格式或反之。它支持Punycode算法,提供命令行接口及多种参数,如`-a`转ASCII,`-d`转回国际化域名。示例包括将`xn--zhonggu-wu9d.com`转换。使用时注意有效输入,考虑版本兼容性,并可与其他工具结合使用。
324 10
|
JavaScript Java 测试技术
基于小程序的高校学生事务管理系统+springboot+vue.js附带文章和源代码设计说明文档ppt
基于小程序的高校学生事务管理系统+springboot+vue.js附带文章和源代码设计说明文档ppt
152 0
|
DataWorks 关系型数据库 数据库
DataWorks操作报错合集之运行报错"system internal error",该如何排查
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。