黑马程序员——OC笔记之类和对象

kivy--入门(一)(Windows)python 从零开始学习kivy 由于课程需要写一个app,还要写报告,这就很愁人,头秃,脑壳大。 虽然学过Android,但是小编对于Java就像对牛弹琴似的,不能说完全不懂,只能说Java这个语言不太适合我,不学还不行,还是先利用python的kivy编写一个吧。 在各大网站搜索开发app,发现适合写手机app的除了Android还有kivy,所以还是先学习如何使用吧! 文章目录从零开始学习kivy前言一、安装二、添加按钮+标签三、文本输入(TextInput)总结 前言 首先推荐这篇博客kivy的安装和使用 阅读详情

------- android培训、java培训、iOS培训、.Net培训、期待与您交流! ----------

在了解类和对象之前,先了解一下什么是面向对象。

面向对象

编程的实质:

将我们的思维转变成计算机能够识别的语言的一个过程。

编程思想:

分为面向过程和面向对象

面向对象是相对于面向过程而言的。

举个例子:

在苹果Appstore上线一个app

面向过程:

(1)先学C和OC语言 (2)构思开发项目 (3)开发app (4)调试Bug (5)上线app

面向对象:

(1)找个苹果开发者 (2)让他开发app  (3)上线

因此,面向过程就是将待解决的问题分解成多个步骤亲自参与解决,面向对象就是将待解决的问题交给对象,专业分工。

面向对象和面向过程的区别:

面向过程:

强调的是功能行为,关注的是解决问题需要哪些步骤。

面向对象:

将功能封装进对象,强调具备了功能的对象,关注的是解决问题需要哪些对象。

面向对象的优点:

(1)大幅提高软件项目的成功率

(2)减少维护费

(3)提高可移植性和可靠性

面向对象设计四个主要特征:

抽象性、封装性、多态性和继承性

类和对象

类(class):
具有相似内部状态和运动规律的实体的集合(或统称、抽象)。

我们从一个个具体的事物中把共同的特征抽取出来,形成一个一般的概念,这就是"归类";如:昆虫、狮子、爬行动物,因为它们都能动所以归类为动物。在演绎的过程中我们又把同类的事物,根据不同的特征分成不同的小类,这就是“分类”;如动物->猫科动物->猫->大花猫等。对于一个具体的类,它有许多具体的个体,我们就管这些个体叫做“对象”。 

对象(object):
即指现实世界中各种各样的实体。
它可以指具体的事物,也可以指抽象的事物。如整数1、2,飞机,法律,表格等等。每个对象都有自己的内部状态和运动规律,如哮天犬具有体重、颜色等内部状态,具有啃骨头、睡觉、被打、咆哮等运动规律。在面向对象概念中我们把对象的内部状态称为属性,运动规律称之为方法。 
类的抽象:
拥有相同(或类似)的属性和行为的对象都可以抽象出一个类
如大花猫、加菲猫、汤姆猫就可以抽象出“猫”类
抽象的方法:
名词提炼法,一般名词都是类
类的实例:
一个类可以实例化多个对象
如人这个类可以实例化出张三、李四、王五等。
类和对象之间的关系:

类:

由3个部分构成

类的名称:类名

类的属性:一组包含数据的属性

类的方法:允许对属性中包含的数据进行操作的方法

对象:

是系统中的基本运行实体

对象就是类类型(class type)的变量

定义了一个类,就可以创建这个类的多个对象

一个类就是具有相同类型的对象的抽象 

类的声明和实现

.h:类的声明文件,用于声明成员变量、方法。类的声明使用关键字@interface和@end。

.m:类的实现文件,用于实现.h中声明的方法。类的实现使用关键字@implementation和@end。

属性(实例变量\成员变量):

成员变量的常用作用域有3种:@public 全局都可以访问

@protected 只能在类内部和子类中访问@private 只能在类内部访问 

方法:

方法的声明和实现,都必须以 + 或者 - 开头

+ 表示类方法(静态方法)

- 表示对象方法(动态方法)在.h中声明的所有方法作用域都是public类型,不能更改

类的定义分为两部分:

1)类的声明(规定当前类的:类名、属性、行为)
@interface 类名:父类名
{
        //定义类的属性
}
//类的行为

@end

2)类的实现(实现具体行为)

@implementation 类名

//行为的具体实现

@end

//车的类的声明
@interface Car:NSObject
{
   //类的属性
    int lunzi;  //车的轮子
    NSString *color;//车的颜色
    int speed;  //车的速度
}
-(void)run;//跑的方法
@end

//类的实现
@implementation Car
-(void)run{

    NSLog("车在以%d的速度奔向悬崖",speed);
}
@end

创建一个对象并访问成员变量

OC中对象创建
[Car new];  

做了3件事情
1)向计算机申请内存空间
2)给类中的每一个成员初始化值
3)返回新申请的空间的首地址
理解方式一:
定义了一个Car类型的指针变量
指针变量指向新申请的内存空间
理解方式二:
用Car类实例化了一个实例对象,对象的名称是p
Car *p = [Car new];
//创建Car类型的对象 car1
Car *car1=[Car new];
//创建一个对象 实质还是指针 (用指针间接访问实例变量值)
car1->lunzi = 3;
car1->speed = 150;
car1->color = @"蓝色";
//查看车的信息
NSLog(@"轮子:%d,速度:%d ,颜色:%@",car1->lunzi,car1->speed,car1->color);


DeepSeek-OCR安装部署文档和避坑指南,包含大多数人遇到的安装报错问题 DeepSeek-OCR安装部署指南摘要:本文详细介绍高性能OCR工具DeepSeek-OCR的安装流程,支持多语言识别和复杂场景文字提取。系统要求包括Linux/Windows/macOS操作系统,推荐NVIDIA显卡(显存≥6GB)和≥16GB内存。安装步骤涵盖:1)创建conda虚拟环境;2)安装PyTorch等核心依赖;3)解决常见问题如CUDA版本冲突、模型下载慢等。提供GPU内存不足等问题的解决方案,帮助开发者快速部署OCR服务。(149字) 阅读详情

相关推荐

【Hypermesh】TetraMesh Panel 常用选项详解

结合Hypermesh 2020 帮助文档和自己的一点使用经验,整理了这个博客。

qgm1702的博客 3676

iOS概念入门学习-OC-类和对象

概要:本文介绍了类和对象的基础知识和其简单地应用。

cuin123的博客 620

CAN通信:EB中配置CAN驱动,配置参数解析

以S32K314芯片说明,其他芯片不同,参数配置也有差异。

zhangxiaio1的博客 2167

黑马程序员------oc语言学习笔记之类和对象

------Java培训、Android培训、iOS培训、.Net培训期待与您交流>------ 一、面向对象和面向过程 1、面向过程更取向与解决问题的过程和步骤,比如把衣服放进洗衣机 脱掉衣服,走到洗衣机,打开洗衣机,放进衣服,放进洗衣粉, 设置洗衣机洗衣服。 2、面向过程就是解决问题需要哪些对象 例如,洗衣服 洗衣机自己打开盖子 洗衣机放水 人放衣服 洗衣机洗启动 在面向对

qq_18821687的博客 432

[OpenCV]使用霍夫变换精准检测圆形原理详解与代码实战

dp`是累加器分辨率与图像分辨率的反比,例如`dp=1`时累加器与图像具有相同的分辨率,`dp=2`时累加器分辨率为图像的一半;`HoughCircles`函数的返回值`circles`是一个包含检测到的圆的参数列表,每个圆的格式为`(x, y, r)`,分别代表圆心的x坐标、y坐标和半径。可以使用`cv2.circle()`函数在原图上绘制出检测到的圆,并使用`cv2.imshow()`或`cv2.imwrite()`显示或保存结果图像。霍夫圆变换是霍夫变换的一种扩展,专门用于检测图像中的圆形轮廓。

yr_lu的专栏 510

黑马程序员——OC的初步认识,类和对象

—-Java培训、Android培训、iOS培训、.Net培训期待与您交流—- 一、oc简介 oc是在c语言的基础上,增加了面向对象的语法,开发的一种语法。 oc可以完全兼容c语言,可以在oc中混入c语言代码和一部分的c++代码 oc用途:用于Mac os x平台和ios平台的应用程序开发 文件后缀名c->.c oc->.m c++->.m 二、语法 1.关键字都是以

pangetzp_41904129的专栏 693

【智能体评测】BrowserUse:一款超越 Anthropic Computer Use 的开源智能体

本文将全面介绍 BrowserUse 的核心功能、配置与使用方法,以及通过多场景测试评估其性能。

surfirst的博客 4099

黑马程序员_OC_类和对象

一.面向对象和面向过程的思想(对比)

huangchen_wyx的专栏 680

YOLOv12改进策略【模型轻量化】| 替换骨干网络为EfficientNet v1 高效的移动倒置瓶颈结构

本文记录的是基于。采用了创新性的方法,通过精心平衡网络和来提升性能。本文将的设计优势融入YOLOv12中,提升YOLOv12的性能与效率,使其在目标检测任务中表现更为出色。本文配置了原模型中的共种不同大小的模型结构,以满足不同的需求。

Limiiiing的博客 963

【国产MCU系列】-GD32F4开发环境搭建(基于Embedded Builder)

GD32F4系列MCU采用Arm® Cortex®-M4内核,处理器主频高达240MHz,可支持算法复杂度更高的嵌入式应用,具备更快速的实时处理能力,并拥有业界领先的大容量存储优势。

视觉与物联智能 3078

黑马程序员_OC之类和对象

类:类是抽象的;对象:对象是具体          1、设计一个类的步骤:类名,属性,行为(功能)              1>、拥有相同属性和行为的类都可以抽象出一个类          2、设计一个植物大战僵尸中的僵尸             1>类名:Zoombie           2>属性:life、speed、gongjili           3>

Bella的专栏 465

深度解析大众点评反爬机制:构建高可用店铺评论采集系统(2026最新实战)

在中文互联网数据采集领域,大众点评(现归属美团)始终占据着特殊地位。其丰富的UGC(用户生成内容)包含了超过2亿条真实店铺评论、数百万家商户的详细POI信息以及用户行为数据,对商业分析、口碑监测、本地生活趋势研究具有不可替代的价值。然而,大众点评的安全团队投入了顶级资源构建反爬系统——从请求签名、行为验证到设备指纹,其防御强度甚至超过多数电商平台。本文将完整呈现一套2026年依然有效的技术方案,包括破解核心参数_token、动态代理池维护、无头浏览器指纹伪装等,最终产出一个生产级采集框架。目录。

2201_76125261的博客 811

黑马程序员学习笔记——OC之基本简介

简介: OC全称为Objective-C,是面向对象C的意思。是在C语言的基础上增加了一层面向对象的语法,而C语言是面向过程的。 其特点为: 1、 C语言的基础上增加了一层最小的面向对象的语法。C++的面向对象语法比JAVA多,JAVA的面向对象语法比OC多,OC只保留了面向对象语法的精华。 2、 完全兼容C语言。C、OC能混用。.c能编写C代码,.m能编写C、OC代码,.m能同时编写这三

yangying514的专栏 1206

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

黑马程序员———OC第一天(类和对象)

一、OC简介 1.OC是在C语言的基础上,增加了一层最小的面向对象语法 2.完全兼容C语言 3.可以再OC代码中混入C语言代码,甚至是C++代码 对于2,3 两点如何理解呢? 新建一个.m的文件(注:OC文件的后缀为.m)在这个.m中你可以用你再学习C语言中学过的语法和知识,编译、链接、运行完全没有问题。 // 完全没有问题 #include int main() { p

sun8_gao的专栏 558

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

黑马程序员-OC语言核心语法(1)

1. 点语法:对象调用方法       上述完整方法为- (void)setAge:(int)age;   1> 如何判断set和get方法:         如果赋值,则是set方法。                  eg:stu.age = 10;         否则是get方法。                   eg :  int age =

wlwl363的专栏 430

黑马程序员————OC基础学习重要小知识点总结

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 1、首先,什么是Objective-C?     Objective-C是一门基于C语言的面向对象语言,C语言的基础上,增加了一层最小的面向对象语法,完全兼容c语言,它在现代计算机的主要作用于Mac OS X作为桌面语言以及作用于iPhone OS(亦称:iOS)。它原是Ne

whymerain的专栏 873

黑马程序员——OC中类和对象的关系

面向对象中有2个非常重要的概念:类和对象 1.如何创建对象 1)面向对象解决问题的时候必须有对象,那如何创建对象呢? 2)现实生活的例子:如何创造汽车对象? a)需要先有汽车的建造图纸,图纸上描述清楚汽车应该具备的属性和功能(行为) 属性:轮子数、时速 功能(行为):跑 b)然后再根据图纸上的描述生成汽车 c)每一辆汽车都是对象,都有自己具体的属性值,都是图纸的实例 d)图纸是抽象

u013231295的专栏 390

黑马程序员——6、OC语言(基本语法)

yi

tan_qi的专栏 718

——黑马程序员——OC中的基本概念

-----------android培训、java培训、java学习型技术博客、期待与您交流!-----------

yhp1095785221的博客 883

黑马程序员:OC学习日记之方法和函数

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

中华王冠 444

黑马程序员 OC语言 - 2 面向对象(上)

若排版有错误,请查看:OC语言 - 2 面向对象(上).pdf

泠风小和 419

黑马程序员——OC基础语法笔记和习题

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------1、Objective-C语言简介: C语言的基础上,增加了一层最小的面向对象语法 完全兼容C语言 可以在OC代码中混入C语言代码,甚至是C++代码 可以使用OC开发Mac OS X平台和iOS平台的应用程序2、OC语法 关键字 基本上所有关键字都是以@开头 下面列举一些常见的关键字,看一眼就行了

caizexu12345的博客 593

黑马程序员——零基础学习iOS开发——10 Object-C 面向对象思想、OC语法简介、对象、类、

Object-C 简介、面向对象思想、OC语法简介、类和对象的创建

demon_csd的专栏 1459

黑马程序员——OC学习笔记02 面向对象1 类

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、基本术语: 1、面向对象编程(OBject - Oriented Programming)的首字母缩写为OOP。OOP是一种变成架构,可构建由多个对象组成的软件。 2、类(class)是一种表示对象类型的结构体。对象通过它的类来获取自身的各种信息,尤其是执行每个操作需要运行的代码。

gjgoodjob271的博客 631

黑马程序员_OC初见识和语法基础

点击打开链接 点击打开链接 Java培训、Android培训、iOS培训、.Net培训、期待与您交流!">点击打开链接 点击打开链接 黑马程序员_OC初见识和语法基础 (一)OC概述 OC全称Objective-C,是一种面向对象的高级语言(而C语言是面向过程的,OC在C的基础上增加了一层面向对象的思想)。OC是苹果

黑马程序员_梁萧 979

黑马程序员——OC---面向对象之类和对象

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 黑马程序员——OC---初接触及基本语法

lost607的专栏 517
上一篇: 黑马程序员——OC与C语言的差异学习
下一篇: 黑马程序员——OC笔记之面向对象三大特征(封装、继承、多态)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值