当前位置: 首页 > news >正文

赚钱平台网站关键词怎样优化

赚钱平台,网站关键词怎样优化,淄博企业网站建设价格,wordpress自定义前端Objective-C具有相当多的动态特性#xff0c;基本的#xff0c;也是经常被提到和用到的有动态类型#xff08;Dynamic typing#xff09;#xff0c;动态绑定#xff08;Dynamic binding#xff09;和动态加载#xff08;Dynamic loading#xff09; 一、编译时和运行…Objective-C具有相当多的动态特性基本的也是经常被提到和用到的有动态类型Dynamic typing动态绑定Dynamic binding和动态加载Dynamic loading 一、编译时和运行时 编译时即编译器对语言的编译阶段编译时只是对语言进行最基本的检查和报错。包括语法分析、词法分析等等将程序代码返程成计算机能识别的语言例如汇编编译通过并不意味着程序就可以成功运行。 运行时即程序通过编译这一关后编译好的代码被装在到内存中这个阶段这个时候会对具体内存进行检查而不仅仅对代码的简单扫描分析此时若出错误程序会崩溃。 可以说编译是一个静态的阶段类型错误很明显可以直接检查出来可读性好而运行时则是动态的阶段尅是具体与运行环境结合起来。 二、oc语言的动态性   含义oc语言的动态性主要体现在三个方面动态类型Dynamic typing)、动态绑定和动态加载。   1.动态类型   动态类型是指队形指针类型的动态性具体是指使用id任意类型将对象的类型确定推迟到运行时由赋给他的对象类型决定对象指针的类型另外类型确定推迟到运行时之后可以通过nsobject的isKindofClass方法动态判断对象的最后的类型动态类型的识别也就是说id修饰的对象为动态类型的对象其他在编译器指明类型的为静态类型对象通常如果不需要涉及到多态的话还是要尽量使用静态类型原因上面已经说到错误可以在编译器体检检查出来可读性好 示例 // 编译的时候人为obj是一个nsstring对象NSString* obj [[NSData alloc]init];// 编译通过运行的时候直接崩溃[obj stringByAppendingString:string];通过这里就可以知道将类型的确定延迟到运行时体现了oc语言的一种动态性动态类型。 动态类型的识别方法 1首先是Class类型     Class class [NSObject class]; // 通过类名得到对应的Class动态类型     Class class [obj class];         // 通过实例对象得到对应的Class动态类型     if([obj1 class] [obj2 class])  // 判断是不是相同类型的实例 2Class动态类型和类名字符串的相互转换     NSClassFromString(NSObject);     NSStringFromClass([NSObject class]);     NSStringFromClass([obj class]);   (3) 判断对象是否属于某种动态类型    - (BOOLisKindOfClass:class    - (BOOL)  isMemberOfClass:obj    (4)判断类中是否有对应的方法   - (BOOL)respondsToSelector:(SEL)selector  // 类中是否有这个类方法  - (BOOL)instancesResponsdToSelector:(SEL)selector // 判断对象中是否有这个实例方法   (5)方法名字符串和SEL类型的转换     SEL funcID select(func);     SEL funcID NSSelctorFromString(func);     NSString* funcName NSStringFromSelctor(funcID) 2. 动态绑定 动态绑定指的是方法确定的动态性具体指的是利用OC的消息传递机制将要执行的方法的确定推迟到运行时可以动态添加方法也就是说一个OC对象是否调用某个方法不是由编译器决定的而是由运行时决定的另外关于动态绑定的关键一点是基于消息传递机制的消息转发机制主要处理应对一些接受者无法处理的消息此时有机会将消息转发给其他接收者处理具体见下面介绍。 动态绑定是基于动态类型的在运行时对象的类型确定后那么对象的属性和方法也就确定了 包括类中原来的属性和方法和运行时动态新加入的属性和方法这也就是所谓的动态绑定。动态绑定的核心就是在运行时动态的为类添加属性和方法以及方法的最后处理或者转发主要用到c语言。#include objc/runtime.h。 消息传递机制 在OC中,方法的调用不再理解为对象调用其方法而是要理解成对象接收消息消息的发送采用‘动态绑定’机制具体会调用哪个方法直到运行时才能确定确定后才会去执行绑定的代码。方法的调用实际就是告诉对象要干什么给对象(的指针)传送一个消息对象为接收者receiver调用的方法及其参数即消息message给一个对象传消息表达为[receiver message]; 接受者的类型可以通过动态类型识别于运行时确定。 在消息传递机制中当开发者编写[receiver message];语句发送消息后编译器都会将其转换成对应的一条objc_msgSend C语言消息发送原语具体格式为 void objc_msgSend (id self, SEL cmd, ...) 这个原语函数参数可变第一个参数填入消息的接受者第二个参数是消息‘选择子’后面跟着可选的消息的参数。有了这些参数objc_msgSend就可以通过接受者的的isa指针到其类对象中的方法列表中以选择子的名称为‘键’寻找对应的方法找到则转到其实现代码执行找不到则继续根据继承关系从父类中寻找如果到了根类还是无法找到对应的方法说明该接受者对象无法响应该消息则会触发‘消息转发机制’给开发者最后一次挽救程序崩溃的机会。转载于:https://www.cnblogs.com/16zj/p/7693257.html
http://wiki.neutronadmin.com/news/187645/

相关文章:

  • 苏州好的做网站的公司泰安房产网签最新情况
  • 西安营销型网站网站建设开放的端口
  • linux 配置网站域名简单网页源代码
  • 竹中建设官方网站wordpress 注册验证码
  • 手机网站快速排名 软件网上做ps赚钱的网站
  • 网站的着陆页做网站和做网页的区别
  • 网站建设往年的高考题查看网站主机
  • 有什么公司建网站如何做微信小程序网站
  • 企业门户网站平台建设招标采购文件网站建设推广群
  • 网站开发与维护项目招标站长工具流量统计
  • 网站空间可以通过什么获取网站的seo
  • 武义做网站广州市网站建设企业
  • 黑龙江恒泰建设集团网站人力外包
  • 2015年全球网站优秀设计师最专业的外贸网站建设公司
  • 做公司网站解析网站开发与设计教程pdf
  • 项目四网站建设内容Python爬取wordpress
  • 上海专业做网站公司电话公司网站建设规划方案
  • 做的网站在ie会乱码成都住建局官网住建蓉e办
  • 网站开发需要申请专利吗娄底网站建设工作室
  • 用帝国cms做网站电脑上无法安装wordpress
  • 深圳市深圳市住房和建设局网站哈尔滨建站哪个好
  • 增长超人做网站多少钱各网站收录
  • 运城市网站建设网站后台的作用
  • 湖北省住房和城乡建设厅网站的公示公告网站被k
  • 长春网站优化实战铜川市新区建设局网站
  • 在线音乐网站开发教程济宁网站建设神华
  • 股票交易平台app排行榜seo综合查询可以关了吗
  • 德国服务器网站搭建一个商城需要多少钱
  • 建设中的网站备案期间做什济南教育加盟网站建设
  • 视频网站建设难吗前端开发岗位职责