Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

java.langパッケージとグラフィックの基本処理

Android開発のためのJava SE再入門(4)

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2011/08/18 14:00

 Androidアプリケーションは、Java言語を用いて開発できます。Androidアプリケーションの開発にあたっては、米グーグル社が提供するAndorid SDK(Software Development Kit、開発キット)の知識は当然ながら、基本となるのはJava SEです。この連載では、Javaでの開発の基礎となるJava SEを、実際にAndorid上で実行できるソースコードとともに解説します。

目次

はじめに

 第4回目の本稿からはJava SEのAPI(基本API)を中心に紹介します。今回は、もっとも基本的なクラスが含まれているjava.langパッケージのAPIから、まず代表的なクラスの概要説明、そして、Androidアプリケーションにとっても重要な概念であるスレッドを中心に解説することにします。

 なお各クラスの詳細な仕様につきましては、オンラインのJava Platform, Standard Edition 6 API仕様や参考書籍などをご覧ください。

対象読者

 Androidアプリケーションの開発を始めたい方で、JavaとEclipseのごく基本的な知識がある方を対象とします。

java.langパッケージ

 Java SEには、さまざまなパッケージが存在します。そのひとつのjava.langパッケージには、文字列操作、データの変換、数値演算、スレッド処理といった基本的な機能のAPIが含まれています。

主なクラス

 通常、パッケージに含まれるクラスを利用するには、import宣言を行うか、またはパッケージ名もつけた完全なクラス名(完全限定名)を記述する必要があります。しかし、このパッケージにかぎり、インポート宣言せずともコンパイラによって暗黙的にimportされるため、いきなりjava.lang内のクラスを記述することができます。たとえば、おなじみのSystemクラスは、次のような完全限定名やimport宣言は不要で、すぐにSystem.out.printlnと書けるのです。

// import java.lang.*; 暗黙的に行われる
java.lang.System.out.println("文字列");  // 完全限定名

System.out.println("文字列");

 次の表は、java.langパッケージの主なクラスです。

java.langパッケージの主なクラス
主なクラス 説明
System 標準入力や標準出力などのクラス
String、StringBuffer、StringBuilder 文字列クラス
Math 指数関数や平方根、三角関数といった数値演算クラス
Boolean、Byte、Integerなど ラッパークラス
Object すべてのクラスのスーパークラス
Throwable 例外のスーパークラス
Thread スレッド処理クラス
Class<T> 実行中のクラスおよびインターフェースを表すクラス

Systemクラス

 Systemクラスは、やや特殊なクラスでインスタンス化することができません。主に、標準入力や標準出力、標準エラー出力を扱うために、フィールドやメソッドがスタティックで定義されています。

主なフィールド/メソッド

 一般のJavaシステムでは、Systemクラスでもっともよく利用されるのが、次に示すフィールドです。

Systemクラスのフィールド定義
フィールド 説明
static InputStream in 標準入力ストリーム
static PrintStream out 標準出力ストリーム
static PrintStream err 標準エラー出力ストリーム

 ただAndroidアプリケーションで使用するのは、第2回目に紹介したログ出力程度で、他の用途でこれらを直接使うことはあまりないでしょう。

 ここでのポイントは、in、out、errが、すべてストリームを戻り値として返すことです。ストリームとは、文字やバイト列の流れを表す概念で、Javaの入出力機能はすべてこの概念をもとに設計されています(ストリームについては、あらためて次回以降で説明します)。

 その他のSystemクラスのメソッドには、現在時刻をミリ秒で取得するcurrentTimeMillisメソッド、配列をコピーするarraycopyメソッドといったものがあります。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • WINGSプロジェクト 高江 賢(タカエ ケン)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

バックナンバー

連載:Android開発のためのJava SE再入門
All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5