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

福建商城网站制作公司南通学校网站建设

福建商城网站制作公司,南通学校网站建设,潍坊网站建设方案推广,网站建设的经过的阶段本节用一简短的文章来说下是ObjectiveC中的类。类其实是OOP中的一个概念#xff0c;概念上简单来讲类是它是一组关系密切属性的集合#xff0c;所谓的关系就是对现实事物的抽象。 上面提到的关系包括很多种#xff0c;比如has a#xff0c; is a#xff0c;has some等概念上简单来讲类是它是一组关系密切属性的集合所谓的关系就是对现实事物的抽象。 上面提到的关系包括很多种比如has a is ahas some等关系是一种抽象过程源于对事务的理解同时还要平衡开发的成本这是一门艺术 类的结构 OOP标准结构 下图是一张通用的类完整结构图表示本章暂时只讲最基础的部分后续章节会围绕这个基础逐渐深入展开。 几点需要说明下 在OOP世界中所有的类都有一个默认的父类一般称为基类。比如java里的基类名为ObjectObjectiveC中的基类名称为NSObject。OOP中不允许多继承ObjC也不例外协议可以实现多个即一个类可以实现多种不同的协议 OOP在ObjC中的实现 ObjectiveC中的代码实现模式 几点需要说明下 在ObjectiveC中会把一个类拆分成两个文件接口(.h)和实现(.m。ObjectiveC中的文件只是一个载体具体的定义是由关键标识来定义的比如在一个.h文件中可以定义多个接口定义在一个.m文件中也可以定义多个接口的实现 在同一个.m文件中书写全部的代码这种方式并不推荐因为会给维护带来很大问题。 #import Foundation/Foundation.h // ----------------------类声明---------------------------- interface Fraction : NSObject end // Tire// -----------------------类实现--------------------------- implementation Fraction- (NSString *) description {return (I am a tire. I last a while); } // descriptionend // Tire// -----------------------main入口函数--------------------------- int main(int argc, const char * argv[]) {autoreleasepool {Fraction *engine [Fraction new];}return 0; }// main所以推荐的类组织方式是 分离接口和实现 把interface和implementation代码定义在同一个.m文件中这种方式呢做练习用还可以如果是正式的程序就不太方便了。因为这样的话在代码行数比较多时维护会是个大总是所以最好的方法是分离接口和实现实现分而治之如下 创建类文件 使用XCode工具在“New File时”选择Cocoa class创建文件时会自动分离.h和.m如下图所示 在下一步窗口中添填写新创建的类名称也可以选择需要继承的父类父类可以是自定义的类 最后设置文件存放目录也可以设置目标和群组复杂的项目可以有多个组和目标 GroupGroup主要是用于管理项目的源文件比如可以创建两个Group一个用于存放UI文件一个用于存放处理程序类。Group不是java中package的概念它是XCode的一个逻辑分组并不会真正的移动文件位置甚至可以让Group指向磁盘上某个特定的文件夹Target简单可理解应用编译后的运行环境比如一个IOS程序其可以设置多个不同的目标如iphone12、iphone13等每个目标采用不同的配置这样也比较方便测试其兼容性 .h类声明实现 相当于类功能的描述默认格式上文件名与类名相同。在.h文件中一般用于定义类的interface指令、公共的struct定义、enum常量、#defines和extern全局变量。新创建一个Fraction.h文件代码示例如下 #import Foundation/Foundation.hinterface Fraction : NSObject-(void) print;end //end Fraction.m类功能实现 相当于类功能的实现默认格式上文件名与类名相同。在.m一般用于定义类的implementation指令、私有的struct定义、extern全局变量定义。新创建一个Fraction.m文件 如果创建的是以.mm为后缀的文件则可以同时使用C和ObjectiveC语法示例代码如下 #import Fraction.himplementation Fraction {//私有属性int numerator;int denominator; } - (void) print {NSLog(%i / %i, numerator, denominator); }- (void) setNumerator:(int) n {numerator n; }- (void) setDenominator:(int) d {denominator d; } end分离后的代码会有如下特点 在interface中引入的头文件可直接继承到implementation实现中不必重复导入比如在.h文件中import Foundation/Foundation.h则.m文件中就不需要再写一遍了虽然可以在 implementation 实现中也可以定义 interface 中未出现过的方法和变量但要注意不要和.h文件中定义的变量名重复在implementation或interface中定义的方法的参数名称尽量不要和自定义的变量重名所以给变量前面加上self是一个非常好的习惯比如下列代码 //声明部分 -(void) setNumerator: (int) name;//实现部分 NSString *name; - (void) setDenominator:(int) name {name name;//上面这行代码必须替换为如下代码否则会发生错误self.name name; }类的实例化 类可以通过new或alloc关键字实现实例化类的实例化是一大块内容本节只需简单了解其使用调用如果用XCode创建工程则会默认生成一个名为main.m的文件里面包含一个main方法注意一个工程只允许存在一个main()方法。 // -----------------------main入口函数--------------------------- int main(int argc, const char * argv[]) {autoreleasepool {Fraction *engine [[Fraction alloc] init];}return 0; }类的组合 上述就是最简单类的实现下面看到类封装的基本用法。也是一种最简单的设计模式组合。比如描述一辆汽车 对象组合其实是一种设计思想并不是一种技术框架实现。类的扩展有分类和协议两种技术另一种技术就是合成对象它可以定义一个类包含其他类的一个或多个对象这个新类就是所谓的合成对象。即手动处理比如父子类的实现可修改成如下代码 interface Car: NSObject{Tires *tires[4]; //4条轮胎Engine *engine; //1个引擎 }interface Tires: NSObject{int par; //标准的气压值int position;//安装位置 }interface Engine: NSObject{NSString *name; //引擎名称 }
http://www.hkea.cn/news/14482835/

相关文章:

  • 国家城乡建设部网站首页域名网站电话
  • 企业网站建设 南通百度推广有哪些售后服务
  • 昆明移动网站建设平顶山北京网站建设
  • 网站开发盈利提供低价网站建设
  • 如何设置网站名字吗网页设置怎么设置
  • 网站怎么做才有效果wordpress wp user frontend pro
  • 葫芦岛市住房和城乡建设局网站oa系统怎么使用
  • 网站开发工资有多少html5网站模板 免费
  • 网站换空间的流程网站优化实习报告
  • 做网站现在用什么软件ui网站设计模板
  • 淘宝上面如何做网站最简单的网站怎么做
  • 哈尔滨公司网站建设wordpress后台发布文章发不
  • 如何编写一份网站开发需求文档个人备案网站内容
  • 校园网站建设的意义wordpress 权限 页面
  • 电脑建设网站服务器企业购 网站建设
  • 猎场第几集做的网站推广网络seo营销推广
  • 大鹏网络网站建设报价企业网站 asp源码
  • 建设通网站公路查询网站两边广告
  • 织梦菜谱网站模板免费下载怎样创建自己的网页
  • php主做哪种类型网站大宗商品交易平台
  • 搭建一个网站需要多久用dw做网站怎么上传到网站上
  • 国外有名的设计网站用什么软件制作动画视频
  • 肇庆百度网站推广做网站如何被收录
  • 成都网站建设zmcms鹿城做网站
  • 温州网站建设培训学校代做百度收录排名
  • 网站建立需要多久清远网站制作公司
  • 襄阳蒂凯网络网站建设小程序餐饮店会员卡管理系统
  • 网站贸易表格怎么做企业网站开发外包公司
  • 上海企业网站设计公司柳州建设网栗园新居
  • 各大搜索引擎网站登录入口湖南哪里有做网站的