Java8のインストール

環境の確認

Mac OS X 10.6 Snow Leopardを利用している人

  • epkgを最新版にアップデートしてください.

shellの確認

emacsで文字化ける人

  • 文字化ける人は,UTF-8で保存したのに,emacsで再度開くとSJISで開いてしまい,文字化けてしまうというひとがいます.
  • utf-8で正常な場合,emacsのステータスバー(ボードライン)が
    -uuu:---F1
  • SJISになってしまった場合,,emacsのステータスバー(ボードライン)が
    -uuS:---F1
    と表示されてしまいます.この場合,以下の設定をする必要があります.

新規作成時のファイルのエンコードをUTF-8に指定するための設定を追加する

(prefer-coding-system 'utf-8)

/usr/local/share/emacs/site-lisp/site-start.el

に追加する.

$ sudo emacs -nw /usr/local/share/emacs/site-lisp/site-start.el
;; -*- Coding: utf-8 -*-                                                        
;;                                                                              

;;; 言語環境の指定                                                              
(set-language-environment "Japanese")

;;; 漢字コードの指定                                                            
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-clipboard-coding-system 'sjis-mac)
(set-file-name-coding-system 'utf-8)
(set-selection-coding-system 'sjis-mac)

すでにSJISで保存されてしまっている場合,コードを変更する必要がある

-uuS:---F1  → -uuu:---F1

Javaのプラットホーム

以下の種類があります:

略称正式名称環境
Java SEJava Platform Standard Editionデスクトップアプリケーション向け
Java MEJava Platform Micro Editionモバイルアプリケーション向け
Java EEJava Platform Enterprise Editionサーバアプリケーション向け
SDKSoftware Development Kit開発キット
JDKJava Development KitSDKの別称
JREJava 2 runtime EnvironmentJava実行環境


Old:(1.5.0まで)

略称正式名称環境
J2SEJava 2 Standard Editionデスクトップアプリケーション向け
J2MEJava 2 Micro Editionモバイルアプリケーション向け
J2EEJava 2 Enterprise Editionサーバアプリケーション向け
SDKSoftware Development Kit開発キット
JDKJava Development KitSDKの別称
JREJava 2 runtime EnvironmentJava実行環境

Javaの種類

種類意味
JavaアプリケーションJREでローカルに実行されるアプリケーション
Javaアプレットネットワークを通してWebブラウザに読み込まれ実行されるJavaのアプリケーション
Javaサーブレットサーバサイドで実行されるJavaのプログラム

Javaの特徴

  • 機種依存性が少ない
    • JavaVM上で動くバイトコード互換
  • 誤りをおかしにくい言語
    • 型制約が厳しくコンパイル時点で発見しやすい
    • ガーベッジコレクションのためメモリ解放しわすれが起きにくい
  • オブジェクト指向言語
  • マルチスレッド
    • 並行プログラミング

プログラムの基礎

Hello.java

Expand allFold all
  1
  2
  3
  4
  5
-
-
|
!
!
public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

コンパイル:

$ javac Hello.java

実行:

$ java Hello

いろいろなHello 2-1-4

(p.022)

変数を使ったHello

Hello2.java

Expand allFold all
  1
  2
  3
  4
  5
  6
-
-
|
|
!
!
class Hello2 {
    public static void main(String[] args) {
    String message = "Hello.";        
    System.out.println(message);
    }
}

メソッドを使ったHello

Hello3.java

Expand allFold all
  1
  2
  3
  4
  5
  6
  7
  8
  9
-
-
|
!
|
-
|
!
!
class Hello3 {
    public static void Say(String m) {
    System.out.println(m);
    }
 
    public static void main(String[] args) {
    Say("Hello.");
    }
}

クラスを使ったHello

Hello4.java

Expand allFold all
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
-
|
-
|
!
-
|
!
!
 
-
-
|
|
|
!
!
class Greets {
    String message;
    void setMessage(String m) {
    message = m;
    }
    public void Say() {
    System.out.println(message);
    }    
}
 
class Hello4 {
    public static void main(String[] args) {
    Greets g = new Greets();
    g.setMessage("Hello.");
    g.Say();
    }
}

GUIを使ったHello

Hello5.java

Expand allFold all
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 
 
-
-
|
|
|
|
|
!
!
 
-
-
|
|
!
!
import javax.swing.*;
 
class HelloFrame extends JFrame {
    HelloFrame() {
    setTitle("Hello Frame");
    setSize(200, 100);
    setLocation(50,25);
    JLabel label = new JLabel("Hello.");
    add(label);
    }
}
 
class Hello5 {
    public static void main(String[] args) {
    HelloFrame f = new HelloFrame();
    f.setVisible(true);
    }
}

プログラムの基本スタイル 2-2

コメント(注釈)

ブロックコメント

/*  この範囲がコメント  */
/*    複数行にわたる
      コメント     */

単一コメント

// 行末までがコメント

javadocによる特殊コメント指定

javadoc対象コメント

/**
 コメント
 コメント
*/
/**   コメント  */
/**
 * コメント
 * コメント
*/
タグ名記述情報
@auther著者名
@paramパラメータに関する情報
@returnメソッドの戻り値の型と取り得る値の範囲
@seeこのプログラムに関するキーワード
@sinceこのブログラムの最初のバージョン
@versionバージョン

JavadocTest.java

Expand allFold all
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
-
|
|
|
|
!
 
-
-
|
!
!
/**
 * Javbadoc用コメント
 * @author 佐々木整
 * @see <a href="http://www.gihyo.co.jp/">技術評論社HP</a>
 * @version 1.0
 */
 
public class JavadocTest {
    public static void main(String[] args) {
    System.out.println("Hello.");
    }
}

javadocの生成

$ javadoc プログラムソース
$ javadoc JavadocTest.java

データの表示 2-3

println

改行ありデータ表示

System.out.println("Hello, Java!");

TowLines.java

Expand allFold all
  1
  2
  3
  4
  5
  6
-
-
|
|
!
!
class TwoLines {
    public static void main(String[] args) {
    System.out.println("Hello.");
    System.out.println("Java!");
    }
}

print

改行なしデータ表示

System.out.print("Hello, Java!");

OneLine.java

Expand allFold all
  1
  2
  3
  4
  5
  6
-
-
|
|
!
!
class OneLine {
    public static void main(String[] args) {
    System.out.print("Hello,");
    System.out.print("Java!");
    }
}

計算

Calc.java

Expand allFold all
  1
  2
  3
  4
  5
  6
  7
  8
-
-
|
|
|
|
!
!
public class Calc {
    public static void main(String[] args) {
        System.out.println(3+2);
        System.out.println(4-6);
        System.out.println(3*2);
        System.out.println(3/2);
    }
}

型名意味最小値最大値解説
boolean論理型
char整数型(文字型)065535符号なし16ビット
byte整数型-128128符号付き8ビット
short整数型-3276832767符号付き16ビット
int整数型-21474836482147483647符号付き32ビット
long整数型-92233720368547758089223372036854775807符号付き64ビット
float単精度浮動小数点型
double倍精度浮動小数点型

変数

Var.java

Expand allFold all
  1
  2
  3
  4
  5
  6
  7
-
-
|
|
|
!
!
public class Var {
    public static void main(String[] args) {
        int x = 10;
        int y =  20;
        System.out.println(x+y);
    }
}
  • 計算結果を2で割るプログラムにしてみましょう.
  • 変数をdoubleにしてみましょう.
  • 文字型変数 char を使ってみましょう.

リンク



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-10-19 (月) 11:34:29 (1435d)