LoginSignup
15
15

More than 5 years have passed since last update.

[Java][Objective-C] JavaとObjective-Cを対応させながら覚える

Last updated at Posted at 2014-05-16

Objctive-CにもJavaにも大学のやる気のない授業程度でしか触れてこなかった私が、iOSアプリとAndroidアプリを同時に携わることになりました。

それぞれ一つ一つ覚えようとしたらわからなくなったので、両方の言語を対応させながら基本を抑えようかと思います。

自分でこうかなって思っただけなので、間違っているのも多いかと思います!
間違いっていたらご指摘ください!!m(__)m!!

Comment

同じっす。
//や/* hoge */です。

import

#import <UIKit/UIKit.h>
#import "Hoge.h"
import java.lang.string;

参照

NSObject *object
Object object

id型

ポインタみたいな感じ。

NSObject *object1 = [[NSObject alloc] init];
id object2 = object1;
String object1 = new String("Hoge");
Object object2 = object1;

Class

宣言

Hoge.h
@interface Hoge : NSObject{
//メンバ変数宣言
  int index;
  NSString *str;
}
//メソッド宣言
-(void) setData : (NSString*)str str: (NSSrting*)number;
@end

@interface {クラス名} : {親クラス名} って感じです。
この.hファイルでは実装は書きません。.mの方に書きます。

またメソッド宣言は、
-(戻り値の型)メソッド名 : (引数の型)引数名 ラベル : (引数の型)引数名

examplesOfDeclarationOfVariables
-(void)hoge : (NSString*)str isSave : (BOOL)isSave;
-(void)hoge : (NSString*)str num : (NSInteger)number;

実装

Hoge.m
#import "Hoge.h"
@implementation Hoge
  //implementation
}
@end
public class Hoge {
  //implementation
}

Class Method

+(void)hoge : (NSString)str isSave : (BOOL)isSave;
public static void hoge(String str, Boolean isSave) {}

Instance Method

-(void)hoge : (NSString*)str isSave : (BOOL)isSave;

メッセージ式

プロパティ

getter/setterを隠蔽してくれる感じの仕組み。

@interface Hoge : NSObject {
  NSInteger index;
}
@property(assign, nonatomic) NSInteger index;
@end
public void setIndex(int index) {
  this.index = index;
}
public in getIndex() {
  return this.index;
}

文字列リテラル

NSString* str = @"hoge";
id str2 = @"fuga";
String str = "hoge";
Object str2 = "fuga"

Log

NSLog(@"m9(^Д^)プギャー");
// System.out.println("m9(^Д^)プギャー");
Log.d("TAG", "m9(^Д^)プギャー");

サンプル

#import <FinalFantasy/FinalFantasy.h> 

[FFManager setAPIEndpoint:@"http://localhost:hoge/"];
[FFManager setAPISecret:@"hoge"];
import FinalFantasy.FinalFantasy.h

FFManager.setAPIEndpoinjt("http://localhost:hoge/");
FFManager.setAPISecret("hoge");

連想配列へ値を追加する

FFEntity *entity = [FFEntity entityWithName:@"user"];
[entity setObject:@"Denis" forKey:@"name"];
[entity setObject:@"Berton" forKey:@"surname"];
[entity setObject:[NSNumber numberWithInteger:10] forKey:@"credits"];
[entity save];
FFEntity entity = new FFEntity("user");
entity.put("name", "Denis");
entity.put("surname", "Berton");
entity.put("credits", Integer.valueOf(10));
entity.save;

ref

http://visible-true.blogspot.jp/2011/06/javaobjective-c.html#1
http://web-terminal.blogspot.jp/2013/05/javaobjective-ciphoneandroid.html

15
15
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
15