CodeZine(コードジン)

特集ページ一覧

JavaとRuby:主要機能の比較

JavaとRubyにおける記述方法の違い

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

Rubyはインタプリタによって解釈されるスクリプト言語で、Javaはコンパイラによってコンパイルされるプログラミング言語です。Rubyは、オブジェクト指向言語であり厳密な型指定を行うという点ではJavaに似ていますが、その文法や仕様は大きく異なっています。本稿では、RubyとJavaの主要機能を比較します。

目次

はじめに

 Rubyはインタプリタによって解釈されるスクリプト言語で、Javaはコンパイラによってコンパイルされるプログラミング言語です。Rubyは、オブジェクト指向言語であり厳密な型指定を行うという点ではJavaに似ています。しかし、Rubyの型指定は動的であるのに対し、Javaの型指定は静的です。Rubyでは型宣言は使用されず、Javaでは型宣言は必須です。JavaとRubyのどちらにも継承があり、"パブリック"、"プライベート"、"プロテクト"のメソッドがあります。RubyはJavaより単純でJavaより高速です。Rubyはさまざまな点でJavaと異なっています。本稿では、RubyとJavaの主要機能を比較します。

インタプリタ方式とコンパイラ方式

 Rubyはインタプリタ方式のスクリプト言語なので、コンパイルしてバイトコードを生成することなく、直接実行できます。たとえば、Rubyファイル「helloruby.rb」は、次のコマンドで実行できます。

>ruby helloruby.rb

 これに対し、Javaアプリケーションは実行前にコンパイルする必要があります。たとえば、Javaクラス「hellojava.java」は、次のコマンドでjavacコンパイラを使ってコンパイルする必要があります。

>javac hellojava.java

 javacコンパイラは、Javaクラスのバイトコードを生成します。その結果、コンパイルしたクラスはjava.exeアプリケーションを使用して実行できるようになります。

>java hellojava

パッケージのインポート

 Rubyでは、requireステートメントを使用してパッケージやモジュールをインポートします。たとえば、extensionsパッケージ/モジュールをインポートするには次のようにします。

require 'extensions'

 外部ファイルをRubyアプリケーションに含めるには、loadまたはrequireを使用します。たとえば、外部ファイル「catalog.rb」を含めるには、次のrequireステートメントを追加します。

require "catalog.rb"

 loadrequireの違いは、loadがメソッド実行のたびに指定のRubyファイルを含めるのに対し、requireはそのRubyファイルを一度だけ含める点です。

 Javaでは、importステートメントを使用してパッケージをロードします。たとえば、Javaパッケージ「java.sql」をロードするには次のようにします。

import java.sql.*;

型付き変数

 RubyでもJavaでも厳密な型指定を行いますが、Rubyの変数の型指定は動的です。これはつまり、変数の型を明示的に関連付けられないということです。たとえば、文字列値を持つ変数は次のように宣言します。

str="Hello Ruby"

 このstr変数には特定の型が関連付けられていないので、整数型その他の型の値を代入できます。

str=1

 Javaの変数の型指定は静的であり、変数に型を関連付けることができます。たとえば、文字列変数は次のように宣言します。

String str="Hello Java";

 このstr変数に整数値を代入することはできません。

null値

 Rubyでは、null値はnilで宣言します。たとえば、変数strnil値を代入するには次のようにします。

str=nil

 Javaでは、null値はnullで宣言します。たとえば、変数strにnull値を代入するには次のようにします。

str=null;

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

バックナンバー

連載:japan.internet.com翻訳記事

もっと読む

著者プロフィール

  • Deepak Vohra(Deepak Vohra)

    O'Reillyの技術レビュー担当者として『WebLogic: The Definitive Guide』を担当。NuBeanコンサルタント、Web開発者でもある。Sun認定資格(Java 1.4プログラマおよびWebコンポーネントディベロッパJ2EEバージョン)を取得。メールの宛先はdvohra0...

  • japan.internet.com(ジャパンインターネットコム)

    japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.c...

あなたにオススメ

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5