【Java】SE or EE?オーバーロード or オーバーライド?紛らわしい言葉まとめ
- ツイート
-
- 2018/02/21
Javaは基本的なソフトウェア開発向けのJava SE、大規模Webアプリケーション開発に必要なJava EE、モバイルアプリケーション開発のためのJava MEと3つのエディションに分かれていることをご存じでしょうか。これらの言葉は初心者の方が混同しやすい用語です。他にも「オーバーロード」と「オーバーライド」といった、紛らわしい用語がJavaにはいくつかあります。
今回はJavaのプログラミングで登場する間違えやすい言葉を3組ご紹介します。
IT業界まるわかりガイドは、日本初Web専門スクールのインターネット・アカデミーが運営する業界情報メディアです。最新の業界情報を、初心者にも分かりやすくご紹介しています。
目次
【1】Javaの「SE」「EE」「ME」は何が違う?
Javaは、用途によってJava SE、Java EE、Java MEの3つのエディションに分かれます
Java SE(Java Platform, Standard Edition)
Java SEは、スタンドアロンやクライアントサーバーシステムで動作するアプリケーションの開発環境を提供するものであり、Javaの基本的なソフトウェア開発に必要な標準機能(API)がまとめられています。単にJavaというときはJava SEを指すことが一般的です。
Java EE(Java Platform, Enterprise Edition)
Java EEは、Java SEにサーバー関連のライブラリを追加したものです。端末内で完結するアプリケーション開発であればJava SEで十分ですが、Webアプリケーションを開発する場合はJava EEを利用します。企業のソフトウェア開発を想定しているものの、個人でのWeb開発にも利用可能です。
Java ME(Java Platform, Micro Edition)
Java MEは、携帯電話やプリンターといったデバイスやスマホのようなモバイル端末で稼働するアプリケーション開発に必要なプラットフォームです。
【2】「JRE」と「JDK」の違いは?
さらに「JRE」「JDK」という、よく似た用語があります。どちらもJava SEを実装したものですが、以下のような違いがあります。
JRE(Java Runtime Environment)
Javaで作られたアプリケーションを動かす際に必要なプラグインがJREです。自分の端末上でJavaを動作させるエンドユーザー向けのJREと、サーバー上でアプリケーションを動作させるサーバー管理者向けのServer JREがあります。
JDK(Java SE Development Kit)
Javaプログラミングの開発キットとして提供されているパッケージがJDKです。開発者向けであるため、Javaのプログラムを実行するだけであれば、インストールする必要はありません。開発者がプログラムの動作を確認できるように、JDKにはJREが含まれています。
【3】「オーバーロード」 or 「オーバーライド」?
Javaプログラミングで登場するオーバーロードとオーバーライドも紛らわしい用語ですが、まったく異なる意味を持ちます。
オーバーロード
「オーバーロード」とは、同一クラスに同じ名前のメソッドを複数作ることをいいます。ただし、メソッド同士を区別できるように、引数の型や数、並びは重複しないようにします。
さまざまな引数を取るものの、同じような処理をするメソッドを作るときは、わざわざ名前を変えるのではなく、名前を流用した方が便利です。そのような場合にオーバーロードを用います。
オーバーライド
スーパークラス(親クラス)で定義されているメソッドと同じ名前のメソッドを、サブクラス(子クラス)で再定義することを「オーバーライド」といいます。スーパークラスのメソッドを利用して、サブクラス独自の機能を持たせたメソッドを作るときに役立ちます。
ただし、オーバーライドを利用する際は、オーバーライドする側とされる側の双方で戻り型、メソッド名、引数の型や数が完全に一致していることが条件です。
おわりに
今回はJavaで登場する専門用語のうち、紛らわしいものを選んで意味をご紹介しました。プログラミングを学び始めたばかりの頃は、次々と出てくる専門用語の理解が大変かもしれませんが、一つずつ確実に意味を押さえていくことが肝心です。
就職や転職のためにJavaの勉強を始めたものの、小さなつまずきが原因で諦めてしまうケースも少なくありません。基礎からしっかりと学びたい方には、万全のサポートが受けられるインターネット・アカデミーのJava講座の受講をおすすめします。