OC基础2 -------面向对象的三大特性

LVGL v9的lv_scale控件实战:5分钟打造动态仪表盘(附完整代码) 本文详细介绍了LVGL v9中lv_scale控件的实战应用,通过5个关键步骤快速打造动态仪表盘。文章涵盖核心特性解析、代码实现、样式定制及性能优化,适用于工业HMI、智能家居等场景,并附完整代码示例。 阅读详情

1.封装

1.属性的set方法

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

2.命名规范:

1》方法名必须是set开头

2》set后面是成员变量名称,首字母大写

3》返回值一定是void

4》一定要接收一个参数,参数类型与成员变量类型一致

{

    NSString *_name;
}

- (void)setName:(NSString*)newName;


2.属性的get方法

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

2.命名规范:

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

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

3》不需要接收任何参数

- (NSString*)name;


//注意//  只需要访问对象是,不允许访问对象时,只给对方提供get方法

              只需要改变对象值,不需要访问对象是,可以只提供对象set方法,或者在参数前使用redoly


set封装还有一个好处,在值发生改变的时候可以做一些其他的事情:

比如:一个学生,语文成绩int yu   数学成绩int shu   总成绩int zong

//在设置语文成绩和数据成绩的时候  计算 他的总成绩也随着其他成绩的改变而改变

- (void)setYu:(int)yu{

_yu = yu;

_zong  = _yu + _ shu;

}

2.继承

继承的好处:

1》建立类之间的关系

2》子类拥有父类的所有成员变量和方法。

继承的注意点:

1》子类不能拥有和父类相同的成员变量

2》子类可以重写父类的方法,覆盖掉父类的方法。前提:父类的方法声明必须在子类前,

3》调用某个对象的方法时,优先去对象中找,如果找不到,去父类中找。顺着[superclass 往上找]

4》在子类方法中,想调用父类的方法,使用super关键字

继承的坏处:

1》耦合性太强。

继承的使用场合

1》当两个类拥有相同的属性和方法时,就可以将相同的东西抽取到一个父类中

2》当a类拥有b类的部分方法和属性时,可以考虑让b类继承a类

//当a类拥有b类的部分方法和属性时,可以让a类拥有b类对象

ps: 继承的特点一个时发展更多的功能,另一个节省代码,所以,父类在创建一个方法时,不妨使用 [[self alloc]init]来创建;

+(instancetype)person{
    return [[self alloc]init];
}
+(instancetype)personWithAge:(int)age{
    person *p = [self person];
    p.age = age;
    return p;
}

3.多态

没有继承就没有多态

1.》父类指针指向子类对象

   // Person 继承与 NSObject 用NSObject指针指向Person对象
        Person *p = [[Person alloc]init];
        
        NSObject *obj = [[Person alloc]init];

2》多态一般用在参数中,只能是用父类指针指向子类对象

3》注意点:父类对象不能用来调用子类方法

4》将obj转化成person对象。

  NSObject *obj = [[Person alloc]init];
        
        Person *p1 = (Person*)obj;

5》好处:如果方法中使用的是父类类型,可以传入父类或者子类的对象。












DESeq2实战:利用LRT检验解析时间序列基因表达动态变化 本文详细介绍了如何使用DESeq2中的LRT检验分析时间序列基因表达数据,揭示基因表达动态变化模式。通过构建完整模型与简化模型比较,LRT检验能有效识别处理效应随时间变化的基因,适用于发育过程、疾病进展等研究。文章提供了从数据准备、模型构建到结果可视化的完整实战指南,并分享了高级技巧与常见问题排查方法。 阅读详情

相关推荐

BIOS/UEFI完全指南:从开机自检到超频魔改的底层硬件控制

计算机启动过程始于固件层,其核心是负责硬件初始化与引导的系统软件。传统BIOS基于16位实模式,寻址能力有限,而现代UEFI采用保护模式,支持图形界面与安全启动,实现了从概念到架构的革新。这一演进带来了显著的技术价值:更快的启动速度、更强的安全性以及对大容量存储设备的原生支持。在工程实践中,无论是解决“虚拟化技术禁用”问题、调整内存XMP配置以提升性能,还是为老主板“魔改”添加NVMe支持,都需要深入理解并操作BIOS/UEFI设置。掌握这些底层交互能力,是进行硬件调试、系统优化与故障排查的关键,也是连接抽

weixin_34236869的博客 459

黑马程序员—OC语言基础—面向对象的三大特性(2)

————————Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——————— 一、继承 1.继承的基本概念与用法 继承,光看这个词,我们就能明白大概意思,就是说有一个新东西能具有一种老东西的特性。接下来我们具体来了解一下面向对象的继承是怎么继承的,有什么样的好处。 在OC中,我们一般说的继承,是指类的继承。假设有类A,那么如果类B的属性与类A相同(即代

编程之路 438

避坑指南:从聚宽迁移到QMT必须知道的5个细节(含Redis连接异常处理)

本文详细解析了从聚宽迁移到QMT平台时需注意的5个关键细节,特别是Redis连接池优化和xtquant重连机制。通过实战代码示例,帮助量化团队解决信号传递稳定性、时间同步、滑点控制等核心问题,确保交易策略平稳过渡。

weixin_27303545的博客 430

OC的三大特性详解

跟C++一样,OC也是面向对象语言,因此它也拥有面向对象语言一般共同的三大特性:封装、继承和多态。 一、封装 封装就是对类中的一些字段,方法进行保护,不被外界所访问到,有一种权限的控制功能。封装的好处:过滤不合理的值,屏蔽内部的赋值过程,让外界不必关注内部的细节。 例如set和get方法。 set方法的作用就是给外界设置成员变量值,可以在方法里面对参数进行相应过滤。 命名规范:方法名必须以set开头;set后面跟上成员变...

程序猿老樊的博客 2198

Python爬虫实战:5分钟抓取东方财富股票数据并保存为CSV

在投资分析与量化研究的日常工作中,获取结构化、可用的金融数据往往是第一步。对于个人投资者和量化入门者而言,如何高效获取A股全市场行情,常常面临网页动态加载、反爬机制与数据整理繁琐等挑战。本文从数据采集的基础概念出发,介绍如何利用Python这一通用编程语言,通过requests库请求财经网站公开的HTTP接口,获取返回的JSON数据,再借助pandas进行字段映射、数据清洗与表格化处理。这种方式相比传统页面解析具有响应快、结构稳定、易于批量操作的显著优势,尤其适合构建个人股票数据池、验证选股策略或进行市场情

weixin_33146151的博客 251

帆软报表JS导出避坑指南:如何正确处理sessionid和参数传递

本文深入探讨了帆软报表中通过JavaScript实现一键导出的关键技术,重点解析了如何正确获取并传递sessionid以确保会话不丢失,以及如何构造包含必要参数的导出URL。文章详细对比了预览后导出与直接URL导出两种方式的差异,并提供了从参数拼接、前端触发下载到高级场景(如SPA集成)的完整避坑指南,帮助开发者构建稳定可靠的自定义导出功能。

weixin_42522857的博客 163

OC面向对象的三大特性

三大特性: 封装,继承,多态 封装: 当类中的属性加 @public 为公共对象是 传入的实参可能是不合理的,这时可以提供一个方法给外界设置属性值,这种方法一般叫做set方法。 set方法: 提供一个方法给外界设置成员变量 声明:(规范) 方法名必须以set开头 后面跟成员变量的名称,首字母必须大写;返回值一定是void,一定要接受一个参数 类型必须和成员变量一致 形参的名称不能

Gaooof的博客 1346

基于Python的FAO农业数据高效爬取与分析实战:从Scrapy到异步爬虫的进阶之路

本文将详细介绍如何使用Python最新技术爬取联合国粮农组织(FAO)的农业数据,涵盖从基础爬虫到高级异步爬虫的完整实现过程。文章包含5000余字的技术解析,提供完整的代码示例,并探讨数据处理与存储的最佳实践。

2201_76125261的博客 242

OC面向对象特性

我们都知道,面向对象程序设计中的类有三大特性:继承,封装,多态,这个也是介绍类的时候,必须提到的话题,那么今天就来看一下OC中类的三大特性: 一、封装 封装就是对类中的一些字段,方法进行保护,不被外界所访问到,有一种权限的控制功能,Java中有四种访问权限修饰符: 1 public,default,protected,private

hgy2011的专栏 1586

基于HetConv与Dual策略的YOLOv8轻量化设计-CSPHet结构的优化与实现

在计算机视觉中,YOLOv8作为目标检测领域的最新版本,通过引入多种改进来提升检测精度和速度。然而,提升精度和保持实时性能往往需要更多参数与计算量。本文提出一种结合Dual思想与HetConv的新型轻量化结构,称为CSPHet。CSPHet能够在保持YOLOv8检测精度的基础上有效减少约70万参数量,实现模型的轻量化和速度的提升。HetConv(Heterogeneous Convolution)是一种混合卷积技术,通过同时使用1x1、3x3等不同大小的卷积核,来捕捉不同尺度的特征。

博客 1327

工商银行软件开发中心数据安全监测溯源防护体系建设成果及展望

结合业界先进溯源理念和我行管理要求,依托大数据、分布式搜索分析引擎等技术,构建PB级海量数据加工分析和小时级快速核验、检索、溯源手段(如图6所示),支撑6种客户敏感信息关键要素的单一或组合溯源,形成行之有效的数据安全溯源流程,配套落地自动化快速泄露样本真实性核验和灵活高效的溯源能力,通过数据相关属性的自动化分析,实现追踪泄露源头、明确泄露路径的目标,为有效应对数据安全事件,降低和消除风险与不良影响,开展事后追责处置工作提供体系化解决方案。提高数据排查的自动化程度和排查效率,降低人工成本。

银行信息系统应用架构详解 226

黑马程序员(OC的三大特性)

------http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

ixx__123的专栏 389

笔试题-2023-思特威-数字电路设计(CIS)【纯净题目版】

10 笔试题-2023-思特威-数字电路设计(CIS)【纯净题目版】

w0shishabi的博客 1472

OC中类的三大特性:封装、继承和多态

OC是一门面向对象的变成语言,具有面向兑现的最基本的特征:封装性、继承性、和多态性。 一.封装 为何要用封装? 当定义了一个类时,类中的数据不允许外界访问,或者允许外界只能读取不能修改而需要隐藏时,就需要用到 set方法或者get方法。 1.OC中的set方法 作用:提供外界设置成员变量值,对参数进行过滤 规范: 1>方法名必须以set开头,后面跟上首字母大写的成员变量的名称 2>

ACGJUN的专栏 961

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

C语言添加面向对象特性,OC语言中面向对象有三大特性

OC语言中面向对象有三大特性,分别是封装,继承和多态。(一)封装:成员变量有四种作用域类型,分别是@public,@private,@protected和@package。之前我们定义好成员变量后,想要在main中直接访问成员变量,往往要在成员变量的定义时候加上一个@public,这种做法虽然可以实现访问,可是它会让你的数据变得很透明,不仅可以随意被访问而且有可能会变得很不合理,例如我顶一个一个i...

weixin_36081486的博客 345

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

OC面向对象三大特性

一、特性一:封装 1、封装的概念 封装是指把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 2、set方法和get方法 (1)set方法和get方法的使用场合 由于@public的成员可以被任何对象访问,存在安全隐患,所

爱家人,爱老婆,爱生活,爱coding,爱运动的有爱青年 793

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

OC -面向对象三大特性

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、封装 1.为什么要封装? 在前面的学习中,我们如果要访问成员变量,就直接在成员变量的声明之前加上@public,而这样成员变量就直接暴露给了外界,这样是不安全的。封装就是不允许外界直接访问成员属性,提供set和get方法给外界,用于设置和获取属性的值。我们可以在set方法里面对

iosxuyue的博客 371

黑马程序员—OC语言基础—面向对象的三大特性(1)

————————Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——————— 一、面向对象的三大特性 面向对象的三大特性为封装、继承、多态。 下面我们一个一个来讨论每一个特性的特点与用法。 二、封装 1.封装的理解 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。 封装,也就是把客观事物封装成抽象的类,并且类可以把自己

编程之路 459

OC面向对象

文章学习整理自文顶顶博客园 目录 一、面向对象--封装(成员变量)       1、set方法 2、Get方法 3、self关键字 二、OC 面向对象---继承        1、基本概念    2、继承的使用使用 3、继承和组合           继承的适用场合: 4、关键字super   作用:   使用场景: 三、面向对象----多...

qq_28596071的博客 524

OC - 封装,继承,多态三大特性

文章目录封装继承多态 类有三大特性:继承,封装,多态。让我们来看一下这三大特性 封装 封装就是对类中的一些字段,方法进行保护,不被外界所访问到,有一种权限的控制功能 对一个累或对象实现良好封装,可以实现以下目的: 隐藏类的实现细节 让使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入逻辑控制,限制对成员变量的不合理访问。 可进行数据检查,从而有利于保证对象信息的完整性 便于修改,提高代码的可维护性 封装实际上有两方面的含义,把该隐藏的隐藏起来,把该暴露的暴露出来。 通过使用访问控制符来实现:

weixin_45841522的博客 417

iOS 关于OC的理解和特性分析

OC的理解和特性 多年之前,接触OC开始,就知道它是一门面向对象的语言。最为面向对象的语言,我们就不得不提起面向对象的三大支柱:封装、继承、多态。这三大特性,时常会运用在我们日常的开发过程中,支撑着我们的每一个项目。 三大特性 封装:即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据...

wangzhi628的博客 705

OC - 3.OC的三大特性

一、封装 1> 封装的定义 隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别 2> 封装的好处 可以通过set方法防止为成员变量设置不合理的值 仅向外部提供公开的接口,屏蔽成员变量的操作过程 外界可以通过接口间接的操作成员变量,而不必关注内部细节 3> set方法和get方法 set方法 ① 作...

664

黑马程序员_OC语言的面向对象特性

QW

Anzeron 659

黑马程序员——OC—面向对象的三大特性

OC第二篇---面向对象的三大特性           OC中面向对象的三大特性是:封装、继承、多态,这三中特性让OC才真正的实现了面向  对象的思想。       封装性是对成员变量的一种封装,在以前定义的成员变量为了让外部访问到把成员变量用 @public修饰,意思就是公开的。而封装就是杜绝这种现象发生,封装可以很好的保护内部成员 变量不能随意的访问。那么对成员变量到底怎么实

wu417284911的专栏 508

5 面向对象的三大特性

面向对象的三大特性是什么?(封装、继承、多态) 封装: 在OC语言中,使用@interface和@implementation来处理类。 @interface就好像暴露在外面的时钟表面,给外界提供展示以及接口。@implementation就好像隐藏在时钟内部的构造实现,把具体的实现封装了起来。 封装主要体现在:实例变量、对象方法、类方法的封装...

136

黑马程序员——【OC】面向对象的三大特性

OC 面向对象的三大特性:封装、继承、多态。 1.  封装    set方法       作用:提供一个方法给成员变量设置值, 并且还可以在方法里对参数进行过滤。       命名规范:         1>方法名必须以set开头      2> set后面跟上成员变量名称,并且成员变量的首字母必须大写     3>返回值一定是void 4>一定要接收一个参数,而且参数类型跟成员变

Damson 444
上一篇: cell的点击无效 ------- 事件传递
下一篇: xcode 经典错误
user_begin
博客等级 码龄11年 3粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值