java与object-c的异同(object-c入门一)

ios基础知识:

XCode:你可以把它看成是一个开发环境,就好像Visual Studio或者Netbeans或者SharpDevelop一样的玩意。你可以将Interface Builder认为是Visual Studio中用来画界面的那部分功能单独提出来的程序。

Objective-C:这是一种语言,就好像c++是一种语言,Java是一种语言,c#是一种语言,莺歌历史也是一种语言一样。

Cocoa:是一大堆函数库,就好像MFC、.NET、Swing这类玩意,人家已经写好了一堆现成的东西,你只要知道怎么用就可以了。

有些人会比较容易混淆Objective-C和Cocoa,就好像有些人会混淆c#和.NET一样。这两个东西真的是两个不一样的东西。



object-c知识:

1.减号的作用

声明方法,obj里面没有public、private等权限,统一public

+号表示static,不用实例化就能调用

java:

public void hello(boolean isHello){

//

}

obj写法:

-(void) hello:(BOOL)isHello{

//

}

2,中括号(调用方法)

this在obj中是self, 布林类型用yes,no

java:

this.hello(true);

obj:

[self hello:YES];


3,NS,UI,CA等开头的都是已经写好的函数库,调用就可以了

NSLog (@”%d”,myInt);


4,nil是null的意思


5,#import  相当于导入包

#improt和#include是一样的


6,@interface

obj是先声明后实现的,h文件声明,@interface +@end  ,m文件实现 @implementation + @end,这不麻烦么

java:

public class Bird extends Animal{
	private string name = "tom"

	private bool isDie(){
		return true;
	}
}


obj:

先写一个Bird.h文件

@interface Bird :NSObject {
	NSString *name;
}
-(BOOL) isDie;
@end



再写一个Bird.m文件

#import "Bird.h"
@implementation Bird
-(void) init{
	name = @"tom";
}
-(BOOL) isDie{
	return YES;
}
@end



7 多参数方法

java:

public void eat(int count , String name){

}

调用: this.eat(3,"frog");

obj:

定义

-(void) eat:(int) count second:(NSString *) name;

实现:

-(void) eat:(int) count second:(NSString *) name{

//

};

调用:[self eat:3 second @"frog"];  为什么要这么麻烦??


都是面向对象的语言,以前是学java的,学一下,有错的请指正


你可能感兴趣的:(ios,Objective-C,Object-C,java异同)