//
// Kline.h
// day13 #import <Foundation/Foundation.h>
@interface Kline : NSObject
{
int _max;
int _min;
int _average;
}
- (void)setMax:(int)max;
- (void)setMin:(int)min;
- (void)setAverage:(int)average; - (int)min;
- (int)max;
- (int)average;
@end
//
// Kline.m
// day13 #import "Kline.h" @implementation Kline - (void)setMax:(int)max
{
_max = max;// self.max = 10;
// 每次重新设置最大值, 那么就重新计算平均值
_average = (_min + _max) / ;
} - (void)setMin:(int)min
{
// setter方法还有一个好处: 监听属性的变化
_min = min;
// 每次重新设置最小值, 那么就重新计算平均值
_average = (_min + _max) / ;
} - (void)setAverage:(int)average
{
_average = average;
} - (int)min
{
return _min;
} - (int)max
{
return _max;
} - (int)average
{
// NSLog(@"重新计算平均值");
//这个地方有性能问题,由于最大值和最小值可能没有发生变化,既然最大值和最小值没有发生变化,那么平均值就不需要重新计算
//只有最大值和最小值发生变化才需要重新计算
// return (_max + _min) / 2;
return _average;
}
@end
//
// main.m
// getter-setter方法练习 #import <Foundation/Foundation.h>
#import "Kline.h"
int main(int argc, const char * argv[]) {
Kline *line = [Kline new];
[line setMax:];
[line setMin:];
//[kp setAverage:(int)]; NSLog(@"min = %i, max = %i, average = %i", [line min], [line max], [line average]); [line average];
[line average];
[line average];
[line average];
return ;
}

oc16--set,get的更多相关文章

  1. oc界面开发整理

    oc界面开发整理 ViewController.h from test82 #import <UIKit/UIKit.h> @interface ViewController : UIVi ...

  2. 【python / mxnet / gluoncv / jupyter notebook】基于mxnet和gluoncv的图像内容识别

    程序环境为高性能集群:CPU:Intel Xeon Gold 6140 Processor * 2(共36核心)内存:512GB RAMGPU:Tesla P100-PCIE-16GB * 2 In  ...

随机推荐

  1. C#之密封类(详解)

    10.3  密封类与密封方法 如果所有的类都可以被继承,那么很容易导致继承的滥用,进而使类的层次结构体系变得十分复杂,这样使得开发人员对类的理解和使用变得十分困难,为了避免滥用继承,C#中提出了密封类 ...

  2. 导入不同业务数据通过Excel实现

    很多公司都用到了老系统移植到新系统,数据自然也需要迁移,这个解决方案之一就是使用Excel文件导入. 结合公司实现,然后简单写了个Demo. (PS:去找朋友本想着花几十分钟弄出来炫耀一波,结果花了三 ...

  3. Nginx作为负载均衡服务

    负载均衡服务器配置: 注意:upstream和server同级 案例: 建立两个基于端口的虚拟主机来模拟两台web服务器. (1)新建一个www.123.com:81和www.123.com:82的虚 ...

  4. JavaScript异步加载方案

    (1) defer,只支持IE defer属性的定义和用法(我摘自w3school网站) defer 属性规定是否对脚本执行进行延迟,直到页面加载为止. 有的 javascript 脚本 docume ...

  5. MEF编程模型

    Contract由Contract name和Contract type组成,Contract两个参数可以省略可以implicit也可以explicit,implicit时name和type会自动推断 ...

  6. java线程中断2

    一个线程在未正常结束之前, 被强制终止是很危险的事情. 因为它可能带来完全预料不到的严重后果. 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了.那么不 ...

  7. HTML 5概述

    HTML语言是一种简易的文件交换标准,用于物理的文件结构,它旨在定义文件内的对象和描述文件的逻辑结构,而并不定义文件的显示.由于HTML所描述的文件具有极高的适应性,所以特别适合于WWW的出版环境. ...

  8. EF MySql:Specified key was too long; max key length is 767 bytes解决方案

    [DbConfigurationType(typeof(MySqlEFConfiguration))]//添加特性 public partial class Model1 : DbContext { ...

  9. 团体程序设计天梯赛-练习集-L1-037. A除以B

    L1-037. A除以B 真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果. 输入格式: 输入在第一行给出两个整数A和B(-100 <= A, ...

  10. List集合的特有功能概述和测试

    List集合的特有功能概述和测试A:List集合的特有功能概述void add(int index,E element)E remove(int index)E get(int index)E set ...