IOS学习之二:Objective-C基础语法和关键字

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 04:10 点击:

对于一门语言得学习,个人觉得最主要得就是其语法格式和那些关键字。
因为对于基本现在大多数得语言,每种语言都是一种符合人思维得方式来与计算机交流。
因此,其实每种语言中定义或是封装好得基础类和类库,其实都是很相似得。
比如 int,double几种基本类型,String,数组,集合以及字典数据类型。
因此你在编程时比如你想以字符串形式和计算机交流,那你很容易就能想到在C中可以使用String这个类,在java中也是Stirng
(当然,前提是你至少有一种同抽象级别得语言基础),那OC呢,也有这样一个类吧,不过是某种原因加了个前缀。

那么对于类中定义函数得使用,可能不同语言就有所不同了,首先是函数名(这个其实基本不担心,现在得ide工具提示太强悍了,真不行你可以文档),
其次就是函数得调用格式,我这简单理解为语法格式得一种。
一:以一个最简单得例子来看OC的语法格式。
1.首先一个类得组成,这个知道C的基本没什么说的 .h和.m文件。一个是头文件,一个是实体文件。
OC中一般说是申明文件和实现文件
简单来说,h文件就是整体对一个类得描述,m文件是对h文件中申明描述得实现
[cpp]
// 
//  NonoAppDelegate.h 
//  MultiViews 
// 
//  Created by Nono on 12-4-19. 
//  Copyright (c) 2012年 NonoWithLilith. All rights reserved. 
// 
 
#import <UIKit/UIKit.h> 
 
@interface NonoAppDelegate : UIResponder <UIApplicationDelegate,UITabBarControllerDelegate> 

    UITabBarController *tabBarController; 
    UIWindow *window; 
 

 
@property (retain, nonatomic)IBOutlet UIWindow *window; 
@property (retain, nonatomic)IBOutlet UITabBarController *tabBarController; 
@end 
2.先看头文件得格式和申明
#import这个关键字没啥说的,java中叫导入。就是引入你当前类所要用到得依赖库和类。
@interface 申明开头关键字。 后面紧跟的是定义额类名  :后面的是继承得类 UIResponder ,< xxxxxxxxx>有点类似于java中得接口,当然 OC中有个
更加准确得定义就叫协议 ,<>放协议类。 整个申明最后都以@end结束。
{ }里面就是常说得申明成员变量。
@property 属性,我暂时理解为也有点成员变量的意思。 这个属性更多是和后面得m文件中的的synthesize关键字有密切联系。
(retain ,nonatomic)属性的一些参数。这个具体可以去看文档,估计C语言额同学应该不陌生,我不是很明确每个参数比较适合得场合。
IBOutlet 关键字,这个是和nib文件息息相关得,只要在nib文件中需要关联的对象,用这个修饰(比如我nib文件中有个window控件,要和代码中这个对象联系起来
,那么就用这个关键字申明),申明完后会看到这段代码最左端有个空心圆圈,当你和nib文件中控件关联后,就实心圆圈了。

[cpp]
// 
//  NonoAppDelegate.m 
//  MultiViews 
// 
//  Created by Nono on 12-4-19. 
//  Copyright (c) 2012年 NonoWithLilith. All rights reserved. 
// 
 
#import "NonoAppDelegate.h" 
 
@implementation NonoAppDelegate 
 
@synthesize window; 
@synthesize tabBarController; 
 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 

  //  self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    // Override point for customization after application launch. 
   // self.window.backgroundColor = [UIColor whiteColor]; 
    self.window.rootViewController = self.tabBarController; 
    [self.window makeKeyAndVisible]; 
    return YES; 

@end 
3.实现文件。implmentationxxx    @end。这个不用说了吧。
@synthesize 这个关键字有点意思。这个关键字得表示法后,编译器就自动隐式生成一个setter和getter,OC上得说法来说就是自动实现一个
存取方式。然后我们知道,oc语言这个习惯方式,一个方法和属性在使用前都必须有个申明,就是 h和m文件这个

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • Lexical or Preprocessor Issue 'xxx.h
      • ios学习笔记(二)xcode 4.3.2下实现基本交互
      • ios版本的helloworld
      • iphone(object-c) 内存管理(3) 有效的内存管理 前半部分
      • ios学习笔记(一)xcode 4.3.2下创建第一个ios项目
      • UITableView一些方法
      • IOS类似iphone通讯录TableView的完整demo【附源码】
      • [iPhone中级]iPhone团购信息客户端的开发 (二)
      • iphone(object-c)内存管理(1)
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1