Objective-C编程语言--简介

Objective-C基本语法和编程 在上面的示例中,我们创建了一个Calculator对象,然后调用了addNumber:toNumber:方法,并将结果存储在result变量中。在上面的示例中,我们创建了一个Shape指针,并将其指向派生类Circle的对象。然后,我们调用了draw方法。对象是类的实例,可以调用类中定义的方法。在上面的示例中,我们创建了一个名为person的Person对象,并设置了其name和age属性。在上面的示例中,我们定义了一个名为addNumber:toNumber:的方法,它接受两个整数参数并返回它们的和。 阅读详情

Objective-C语言被设计成一种精致的,面向对象的,用法简单的计算机语言。它是完全基于标准C语言,并且做了最小的,但是功能强大的扩展的语言。这个扩展语言借鉴了是早期的能支持面向对象的语言Smalltalk的风格。Objective-C使用一种简单易懂的方式使得C语言能够完全支持面向对象。

大部分面向对象的开发都保护下面几个部分:

  • 一个面向对象的语言

  •  

    一个类库

  • 一系列的开发工具

  • 一个运行期环境

本文档描述了开发环境的第一部分--程序语言。同时对第二部--类库--提供简单描述,Objective-C提供了编程框架--即Cocoa。关于运行期是被描述在一个单独的文档中--Objective-C Runtime Programming Guide.

谁应该读本文档

本文档的预期读者会对如下内容感兴趣:

  • Objective-C编程

  • Cocoa应用库的基本信息

本文档不只是介绍Objective-C的面向对象特性,而是全面介绍这个语言本身。当然,只是专注于对C的扩展部分,而不保护C语言本身。

由于不是描述C语言的文档,所以这里要求读者需要一定的C语言基础。由于面向对象是和C语言的面向过程非常不同,所以即使你不是C语言的专家,也不会妨碍你对本文档的理解的。

本文档的组织结构

下面的章节覆盖了所以对C语言的扩展。

文章的最后有一个所有Objective-C语言和面向对象名词的解释汇总。

约定

本文档使用浅体字和粗体字表示不同的部分。前体表示这个部分必须使用这样的字符,不能有所有变化,粗体表示是可以自己定义的。比如,下面的代码:

@interface ClassName ( CategoryName )

表示@interface 和其他的两个部分是必须的,但是你可以选择类名和类别名。

在例子代码中,省略号表示这有一些代码,但是没有显示出来:

- (void)encodeWithCoder:(NSCoder *)coder
{
    [super encodeWithCoder:coder];
    ...
}

参看

如果你从来没有面向对象编程经验,请先看文章Object-Oriented Programming with Objective-C。如果你有其他语言,比如C++,JAVA等语言的面向对象开发经验,也建议你读一下这个文章,因为Objecctive-C的面向对象的语言支持和其他的语言是不同的。Object-Oriented Programming with Objective-C 为你站在Objective-C开发者的角度来熟悉面向对象编程提供帮助。他提供了面向对象的设计思路,以及如何写真正的面对对象的程序。

运行期系统

Objective-C Runtime Programming Guide 描述了Objective-C的运行期特性,以及你如何用它。

Objective-C Runtime Reference 描述了Objective-C在运行期系统方面提供的结构和函数。你可以使用这些支持和运行期系统进行交互,比如你可以动态增加类,或为类增加函数,或得到加载库中所有的类的列表。

内存管理

Objective-C支持三种方式的内存管理机制:即在自动垃圾回收和内存计数器上的技术:

  • 自动内存计数管理 (ARC),编译器负责管理实例的生命周期。

  • 手动管理内存计数器 (MRC,有时候称MRR为“手动增加/释放”),程序员负责所有的内存管理工作。

    手动管理内存的方式描述在文章Advanced Memory Management Programming Guide中。

  • 垃圾回收,系统提供垃圾回收齐来自动管理内存管理和实例生命周期管理。 where you pass responsibility for determining the lifetime of objects to an automatic “collector.”

    垃圾回收技术描述在Garbage Collection Programming Guide中。 (本技术不能用在iOS开发中—你也不能通过iOS开发中心看到上面的这个文档)

1、探索Objective - C编程:从基础到应用 本博客全面介绍了Objective-C编程语言的学习路径,从基础语法到实际应用开发。内容涵盖作者和审校者的背景、编程语言的发展历程、学习方法与内容结构,以及Foundation框架和Cocoa编程的深入探讨。通过实例教学和清晰的流程图,帮助初学者快速入门并掌握Objective-C 2.0编程,为Mac和iPhone平台的应用开发打下坚实基础。 阅读详情

相关推荐

Objective-C编程之道:深入理解与实践指南

类别(Category)是Objective-C中一种独特的特性,它允许开发者向现有类添加新的方法,而无需访问该类的源代码。这在不修改第三方库代码的情况下扩展功能时非常有用。@end@end在这个例子中,我们为UIView类添加了一个新的方法displayRed,它将视图的背景颜色设置为红色。设计模式是软件工程中的一套被广泛认可的最佳实践,它们是经过时间验证的解决问题的模板。在软件开发过程中,正确地应用设计模式可以解决特定设计问题,并帮助团队成员间高效沟通。

weixin_42181686的博客 782

如何全面学习Object-C语言的语法知识 (Xmind Copilot生成)

主要是Xmind Copilot的一次使用经历

goodgoodstudy___的博客 1230

Objective-C编程(第4版)

1 Introduction 1 2 Programming in Objective-C 7 3 Classes, Objects, and Methods 27 4 Data Types and Expressions 51 5 Program Looping 71 6 Making Decisions 93 7 More on Classes 127 8 Inheritance 151 9 Polymorphism, Dynamic Typing, and Dynamic Binding 177 10 More on Variables and Data Types 195 11 Categories and Protocols 219 12 The Preprocessor 233 13 Underlying C Language Features 247 14 Introduction to the Foundation Framework 303 15 Numbers, Strings, and Collections 307 16 Working with Files 369 17 Memory Management and Automatic Reference Counting 399 18 Copying Objects 413 19 Archiving 425 20 Introduction to Cocoa and Cocoa Touch 443 21 Writing iOS Applications 447 A Glossary 479 B Address Book Example Source Code 487 Index 493

Objective-C 编程指南:从基础到实战,探索iOS开发的魅力

Objective-C是建立在C语言基础上的面向对象编程语言,引入了Smalltalk风格的消息传递机制,支持动态类型和动态绑定,使得代码更加灵活。Objective-C虽然不如Swift那样现代,但在iOS开发领域仍然占据一席之地,特别是在维护旧项目或某些特定场景下。掌握Objective-C不仅能够让你深入理解iOS平台的底层机制,还能在一定程度上提升跨语言编程的能力。你在学习或使用Objective-C过程中遇到了哪些有趣或棘手的问题?有哪些独到的见解或技巧愿意分享?

一个做过前端开发的产品经理,经历过睿智产品的折磨导致脱发之后,励志要翻身"农奴"把歌唱,一边打入敌人内部一边持续提升自己,为我们广大开发同胞谋福祉,坚决抵制睿智产品折磨我们码农兄弟! 3054

objective-c编程 第2版

objective-c编程 第2版

Objective-C 编程之道

Objective-C编程之道 PDF扫描版 Carlo Chung著 刘威译 人民邮电出版社

Objective-C简介

1.Objective-C 是一种面向对象的计算机语言(是什么) 2.OC不是一种全新的语言,它是在C语言的基础上增加了面向对象的语法,所以OC兼容C语言,可以再OC中混入C语言代码,甚至是C++代码。(怎么来的) 3.可以使用OC来开发Mac OS X平台 和iOS平台的程序。(作用) 4.Objective-C发展现状 1986年,BradCox在纯面向对象语言SmallTalk的

wang_yao_kuan的博客 812

STM32CubeMX——循迹传感器TCRT5000的使用

前言 人生如逆旅,我亦是行人。 ————苏轼《临江仙·送钱穆父》 一、介绍 TCRT5000描述:(带有晶体管输出的反射光学传感器) TCRT5000是一种反射式光学传感器,它包括一个红外发射器和一个3.5mm引线封装的光电晶体管,可阻挡可见光。还具有1mA 典型被测输出电流,2.5mm峰值工作距离,可应用传感与仪表,工业等行业。 TCRT5000具有紧凑的结构,其中发射光源和探测器布置在同一方向,通过使用来自物体的反射红外光束来感知物体的存在。工作波长为950毫米,探测器由光电晶体管组成

W_Oilpicture的博客 1万+

Objective-C 编程语言(1) 简介

转载请标明出处:blog.youkuaiyun.com/zhangxingping 简介     Objective-C是一个简单的面向对象的编程语言。Objective-C是对标准ANSI C的扩展。这种扩展在程度上并不算大(比如和C++相比),但这部分扩展的功能是十分强大的。这部分对C的扩展基本上都是基于Smalltalk语言的。Smalltalk是第一个面向对象的语言。Objective

每天进步一点点。 2726

Qt Installer Framework4.6.1的最基础使用1(win10+离线安装包 )

因工作需要,win程序发布后,打包成一可执行exe文件,且兼容win7系统笔者记录了一些关键要点,供有需要的小伙伴使用。

aggs1990的专栏 904

超实用!用ChimeraX对AlphaFold 结果可视化(中): 蛋白结构美化篇

而一般需要的背景颜色是无色(白色),有三种方法可以更改背景颜色,这里我们介绍两种方法,第三种在下一小节中讲解。如果想选中蛋白链中的某一结构区域或者某些位点,可以用Ctrl+Shift+鼠标左键,或在软件窗口中点击。在这个窗口中可以对蛋白的主链、侧链、表面等颜色进行修改,只用在。,即可在右下角看到我们蛋白的序列信息,在这里面直接用鼠标选择要选择的结构域。就会有更多的颜色供我们选择,如果有特定的色号还可以在这个界面继续选择。后面的颜色(②),就可以选择想要的任何背景颜色(③)。就可以选择软件推荐的常用颜色。

m0_63153079的博客 5486

Objective-C 编程语言官网文档(一)-简介

声明:本文档仅为个人学习过程中顺手翻译之作,方便开发的同胞借鉴参考。如有觉得译的不好不到位的地方,欢迎指正,将及时做出更正 尽量尊重原文档,因为首次Objective-C,有些地方可能直译了没有注意该语言的专有词,希望指正。如需转载,请注明出处 我的编程环境: IDE:XCODE4.3.1 OS: MAC OS X 10.7.4

Michael_J's Zone 1万+

基于 Node.js + MongoDB 技术栈的小众开源短链接程序 —— Lynx

开源的短链接程序有很多,像 YOURLS、Shlink 等大多采用 PHP + MySQL 技术栈。但我之前的服务器配置一般,再加上自己写的小玩具使用的是 Node.js + MongoDB,这些环境已经装在服务器上了,因此更倾向于寻找一款同样基于这套技术栈的短链接程序。搜索了很久才找到这么一款基于的短链接程序——Lynx。这个开源项目非常小众,Star 数只有两百多。

zc_mk的博客 827

Objective-C编程语言(Programming with Objective-C)(零):简介

投稿作者:简书/杨浩宇新浪微博:@杨浩宇-小橘爷原文链接:http://www.jianshu.com/p/231fd54cc07d关于Objective-CObjective-C是你在...

滴水穿石,点石为金 354

Windows10 搭建 FTP 服务器

问题: 有这么一个需求,博主需要对班级同学的信息进行收集,同学的信息是一个个的文件, 正常是每个同学将自己的信息打包压缩通过 QQ 或者邮箱方式发送给博主, 博主一个个接收这些压缩包,然后进行解压,再统一放到一个文件夹下, 但是博主觉得这样子实在是太麻烦了,如果某一个同学的信息来回变动,就需要接收很多次,更改很多次, 另外如果消息过多还会产生漏掉某个同学的信息的问题。 解决方法: 如果可以使...

assiduous_me的博客 3966

Drools vs URule:5个真实项目场景告诉你如何选择开源规则引擎

本文通过电商风控、物流计费、会员体系、保险定价和物联网告警五个真实项目场景,深度对比了Drools与URule两款开源规则引擎。分析了两者在规则复杂度、性能表现、开发运维及适用场景上的核心差异,为技术选型提供基于实战的决策指南。

k6l7m8n9的博客 945

1.Objective-C简介

Objective-C简介 Objective-C语言简介:Objective-C(简称ObjC或OC),在C语言的基础上做了面向对象扩展 1980年代初由Brad Cox和Tom Love发明,后来成为NeXT的主力语言,后被苹果收购,成为苹果开发平台的主力语言(NeXT由乔布斯创立) 与Cocoa和Cocoa Touch框架高度集成,通过LLVM编译器架构,支持与Swift语言双向互操作

勤学如春起之苗,不见其增,日有所长;辍学如磨刀之石,不见其损,日有所亏。 716

别再为跨页读写发愁了!STM32F407模拟I2C驱动24C256/512的避坑指南

本文详细解析了STM32F407模拟I2C驱动24C256/512的跨页写入问题,揭示了24C系列存储器'写满一页不会自动翻页'的关键机制,并提供了经过验证的分页写入算法和优化方案。通过GPIO时序优化、地址计算和错误处理等技巧,帮助开发者解决数据错乱、覆盖等常见问题,实现稳定可靠的EEPROM读写操作。

weixin_42631411的博客 377

Apple Swift编程语言入门教程

Apple Swift编程语言入门教程 转自: 作者: 日期: gashero 2014-06-03 目录 1   简介2   Swift入门3   简单值4   控制流5   函数与闭包6   对象与类7   枚举与结构 1   简介 今天凌晨Apple刚刚发布了Swift编程语言,本文从其发布的书籍《The Swi

... 809

STM32G4 电机外设篇(三) TIM1 发波 和 ADC COMP DAC级联

STM32G4电机控制外设应用笔记摘要:本文详细介绍了TIM1高级定时器生成三对互补PWM波的配置方法(预分频器PSC=30000,重装载值ARR=10000),重点说明需断开电机连线避免干扰。通过STM32CubeMX配置TIM1通道4触发ADC采样,设置RCR分频参数,并给出Keil代码修改要点。第二部分探讨了TIM1、ADC、比较器和DAC的级联应用,包括电流采样触发时序(在PWM波峰值前采样)和过流保护机制。配置步骤包含DAC3作为比较器负输入端、设置Break触发封波保护,并附关键代码段实现外设联

qq_43091070的博客 1102

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

上一篇: iOS5编程--官方例子代码研究--6.MailComposer
下一篇: 名词汇总
NickTang
博客等级 码龄24年 261粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值