`
tomdev
  • 浏览: 3376 次
  • 来自: ...
最近访客 更多访客>>
社区版块
存档分类
最新评论

IPhone学习1- 初始化

阅读更多

nil     类似于C中的NULL, 但nil是Object, 可以发送消息给nil
如:
[nil message]

BOOL 也是通过类库实现的, 分别是YES和NO

#import   类似了  #include ,但不会存在重复包含的问题

在普通的双引号字符串前放置一个@符号,就成了一个 NSString对象

方法名字前面的单个减号(-)表明该方法是一个实例方法。如果方法名字前面是一个加号(+),则表明该方法是一个类(static)方法。
这个概念在C++中也是有的.



Objective-C中的类可以分为两种类型的方法:  实例方法(instance methods)和类方法(class methods).   实例方法就是一个在类的一个具体实例的范围内执行的方法。也就是说,在你调用一个实例方法前,你必须首先创建类的一个实例。而类方法,不需要你创建一个实例。





以下是自己在学习Objective-c的时候所涉及的代码:

类的定义:







Java代码 
#import <Cocoa/Cocoa.h>  
 
 
@interface StringUtils : NSObject {  
 
}  
//默认的初始化方法  
- (id) init;  
//指定的初始化方法,比如NSString自带的有 initWidthFormat这个初始化方法  
- (id) initWithString:(NSString*) string;   
- (NSArray*) split:(int) a;  
 
@end 

#import <Cocoa/Cocoa.h>


@interface StringUtils : NSObject {

}
//默认的初始化方法
- (id) init;
//指定的初始化方法,比如NSString自带的有 initWidthFormat这个初始化方法
- (id) initWithString:(NSString*) string;
- (NSArray*) split:(int) a;

@end






类的实现:







Java代码 
//  
//  StringUtils.m  
//  string  
//  
//  Created by sin francis on 10-7-12.  
//  Copyright 2010 __MyCompanyName__. All rights reserved.  
//  
 
#import "StringUtils.h" 
 
 
@implementation StringUtils  
 
 
- (id) init  
{  
      
    if(self = [super init]){  
        NSLog(@"init method");    
    }  
 
    return (self);  
}  
 
- (id) initWithStringNSString *) string  
{  
 
 
    if(self =  [super init]){  
      
        NSLog(string);  
    }  
    return (self);  
      
}  
 
- (NSArray*) split:(int) a  
{  
      
    NSLog(@"aaaaaaaaa");  
    return @"ssss";  
      
      
          
}  
@end 

//
//  StringUtils.m
//  string
//
//  Created by sin francis on 10-7-12.
//  Copyright 2010 __MyCompanyName__. All rights reserved.
//

#import "StringUtils.h"


@implementation StringUtils


- (id) init
{

if(self = [super init]){
NSLog(@"init method");
}

return (self);
}

- (id) initWithStringNSString *) string
{


if(self =  [super init]){

NSLog(string);
}
return (self);

}

- (NSArray*) split:(int) a
{

NSLog(@"aaaaaaaaa");
return @"ssss";



}
@end




开始调用:







Java代码 
#import <Foundation/Foundation.h>  
#import "StringUtils.h" 
int main (int argc, const char * argv[]) {  
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];  
 
      
    //StringUtils* s= [[StringUtils new];  
    //一开始使用的方法,生成对象,现在我们使用alloc的方式生成对象  
      
      
    StringUtils* s= [[StringUtils alloc] init];  
    [s split: 1];  
      
 
      
    StringUtils* s1= [[StringUtils alloc] initWithString :@"this is the init string"];  
 
      
      
      
    // insert code here...  
    NSLog(@"Hello, World!");  
    [pool drain];  
    return 0;  

分享到:
评论

相关推荐

    知易Cocco2D-iPhone开发教程-02

    在这个教程中,你将了解到如何初始化项目,设置视图,并理解这些基本元素的工作原理。 2. **场景管理**:在Cocos2D-iPhone中,场景是游戏或应用的主要容器,可以包含多个层。我们将会学习如何创建和切换场景,以及...

    cocos2d-iphone-1.1-beta cocos2d示例工程

    通过示例工程,我们可以学习到如何组织项目结构、初始化Cocos2d-iPhone环境、加载资源、创建精灵、应用动作、处理用户输入、播放音频、以及利用物理引擎进行碰撞检测等。每个示例都是一次具体实践,通过分析和修改...

    iOS实例开发源码——lhunath-Cocos2D-iPhone.old-9ab3d34.zip

    1. HelloWorld Layer:通常是一个项目的起点,展示了如何创建和初始化场景和层。 2. CCAction:源码中的动作类实现,可以看到如何定义和执行不同的动作效果。 3. CCTexture2D:纹理管理类,涉及图片加载和纹理 ...

    知易Cocos2D-iPhone代码示例源码1-8

    源码中的“1”可能涵盖如何创建和切换场景,例如使用` CCDirector`来初始化和运行场景,以及如何在不同场景之间进行平滑过渡。 2. **精灵与图层**: "2"的代码可能涉及到精灵(CCSprite)和图层(CCLayer)的使用...

    IOS应用源码——tototti-Sendai.iPhone-ver1.3-sample-4c1a743.rar

    在iOS开发中,理解应用程序的生命周期管理至关重要,这包括初始化、视图控制器的加载与显示、内存管理以及用户交互处理。源码中可能包含AppDelegate.swift或AppDelegate.m文件,这是应用生命周期的核心,负责响应...

    IOS应用源码Demo-【游戏】iPhone扫雷游戏-毕设学习.zip

    你需要理解如何在Objective-C中实现这些逻辑,包括初始化游戏面板、标记雷区、计算安全格子等。 5. **事件处理**:游戏中的用户交互,如点击或滑动,需要通过事件处理来响应。这涉及到UIControl的事件代理方法和...

    iPhone游戏编程 Objective-c 教程

    `这一行调用了父类的初始化方法,确保父类的初始化逻辑得以执行。 - `if(self){...}`:初始化对象变量的过程。 ##### 2. 方法声明与调用 Objective-C中的方法声明和调用具有独特的语法结构。 - **方法原型**: `...

    IOS应用源码之iPhone Browser-1.zip

    本篇文章将深入探讨“iPhone Browser-1”这个iOS应用的源码,帮助开发者理解如何构建一个基本的iPhone浏览器。该源码项目以ZIP文件形式提供,包含了一个名为"iPhone Browser-1"的子目录,这正是我们要探索的核心。 ...

    西蒙iphone-OpenGL ES

    - **准备工作**:确保已经设置了OpenGL ES环境,如加载所需的库文件、初始化渲染上下文等。 - **绘制流程**: 1. **定义几何数据**:如上面提到的三角形顶点坐标。 2. **配置OpenGL状态**:包括设置颜色、深度测试...

    知易Cocco2D-iPhone游戏开发教程系列part1

    2. **环境配置与项目初始化**:教程将指导如何设置Xcode开发环境,创建新项目,并引入Cocos2D-iPhone库。理解项目结构和配置是游戏开发的第一步。 3. **基本图形与精灵(Sprites)**:学习如何绘制和操作2D图形,...

    Cocos2d-iphone 开发教程

    - 主工程通常包括一个main.m文件,负责初始化Cocos2d环境,并启动第一个场景。 5. **运行示例工程**: - 在完成安装后,可以尝试运行Cocos2d-iPhone提供的示例工程,这些示例可以帮助您更快地理解框架的使用方式...

    苹果iphone iBoot-master

    2. 引导加载:它负责引导iOS操作系统,连接到硬件,并初始化必要的服务。 3. 恢复模式管理:当设备遇到问题或需要进行恢复操作时,iBoot也参与其中,如DFU(Device Firmware Upgrade)模式和恢复模式。 iBoot的特性...

    学习 Object-C入门教程

    另外,它也会涉及一些iOS开发中常用的高级概念,比如对象的初始化、字符串、数组和字典的操作、属性的使用、类别(Categories)、协议(Protocols)、委托(Delegate)模式等。 从内容部分可以提取出,该教程适合...

    iPhone4 开发Demo-3

    在Demo中,你会看到如何初始化CLLocationManager对象,设置其代理,并启用位置更新。 接下来是MapKit框架的介绍。MapKit是iOS中用于展示地图、标记和路线的库,它与Core Location紧密协作,提供了丰富的地图功能。...

    知易Cocos2D-iPhone开发教程源代码

    1. **初始化与设置**:如何配置项目,引入Cocos2D库,以及设置主入口点(如`AppDelegate.m`中的`applicationDidFinishLaunching:`方法)。 2. **场景与层的管理**:如何创建和切换场景(`CCScene`),以及在层(`...

    iPhone开发基础教程&Objective-C.2.0程序设计

    6. **App生命周期**:了解应用从启动到关闭的过程,包括初始化、内存管理、后台模式等。 7. **手势识别**:如轻触、滑动、捏合等手势的处理,以增强用户交互。 8. **网络编程**:包括使用URLSession进行HTTP请求,...

Global site tag (gtag.js) - Google Analytics