スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【SJC-P】自動ボックス化(boxing・unboxing)【Java】

プリミティブ型とオブジェクト型を自動変換する際の名称。

boxingは、プリミティブ型⇒オブジェクト型へ変換、
unboxingは、オブジェクト型⇒プリミティブ型へ変換する際の名称。

自動ボックス化機能により、unboxing・値再代入・boxingと行い、
あたかもラッパークラスの値が変わったかのようにすることもできるようになった。

<こんな感じ>

class Test{
public static void main(String [] args){
Integer i = new Integer(5);
i += i; // 自動ボックス化により、不変のようにみえない
System.out.println(i);
}
}
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

【SJC-P】ラッパークラス【Java】

全てのプリミティブ型にラッパークラスは存在し、
プリミティブ型をオブジェクトとして扱うためのクラス。

ラッパーオブジェクトに設定した値の変更は不可。
色々なメソッドが用意されていますが、
ようはオブジェクトでないと扱えない型にプリミティブ型を使いたい時とかに
活躍するものだと今のところ認識しています。

<こんな感じ>

class Test{
public static void main(String [] args){
byte a = Byte.parseByte("412"); // 色々なメソッド
Integer x = new Integer(5);
byte b = x.byteValue();
System.out.println(a + " " + b);
}
}

テーマ : プログラミング
ジャンル : コンピュータ

【SJC-P】オーバーライドとオーバーロード【Java】

オーバーライドとは、スーパークラスで定義されたメソッドをサブクラスで上書きして
 スーパークラスとは別の動きをさせること。
 要は、サブクラスに特化した機能を入れたい時に使ったりする。

オーバーロードとは、多重定義で、同一のメソッド名で、複数の動作パターンを作成する。

<こんな感じ>

class Test{
public static void main(String [] args){
Hoge h = new Hoge();
h.hoge();
}
}

class Hoge extends Foo{
void hoge(){
foo(); // オーバーライド
piyo();
piyo(5); // オーバーロード
}

// オーバーライド
void foo(){
System.out.println("hoge");
}

// オーバーロード
void piyo(int x){
System.out.println(x);
}
}

class Foo{
void foo(){
System.out.println("foo");
}

void piyo(){
System.out.println("piyo");
}
}


<オーバーロード>オートボクシングよりも拡大変換が優先され、var-argよりもboxingのが優先される。

class Test{
static void foo(double x){System.out.println("拡大変換-double");}
static void foo(Integer x){System.out.println("boxing");}
static void foo(long x){System.out.println("拡大変換-long");}
static void foo(Byte x,Byte y){System.out.println("boxing");}
static void foo(byte... x){System.out.println("可変長引数");}
public static void main(String [] args){
float f = 5.0f;
int i = 5;
byte b = 5;
foo(f);
foo(i);
foo(b,b);
}
}

テーマ : プログラミング
ジャンル : コンピュータ

プロフィール

yukinosakura

Author:yukinosakura
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。