-
Javaプログラミングとは何ですか?
Javaは、もともとSun Microシステムによって開発され、1995年にリリースされた汎用の高級プログラミング言語です。Javaは、Windows、Mac OS、さまざまなバージョンのUNIXなどのさまざまなプラットフォームで動作します。 James Goslingは、彼の多くのセットトップボックスプロジェクトの1つで使用するために、1991年6月にJava言語プロジェクトを開始しました。ゴスリングのオフィスの外に立っていた樫の木にちなんで最初は「樫」と呼ばれていたこの言語も「緑」という名前で呼ばれ、後にランダムな単語のリストからJavaに名前が変更されました。 Sunは、1995年に
-
JREとJDKの違いは何ですか?
JDK (Java Development Kit)には、JREを含むJavaアプリケーションを開発および実行するために必要なすべてのツールとライブラリが含まれています。 JRE Javaランタイム環境は、Javaプログラムの実行に必要なJVMおよびその他のライブラリを含むソフトウェアです。
-
Javaの共変リターンタイプとは何ですか?
一般に、オーバーライドでは、スーパークラスとサブクラスのメソッドは同じ名前とパラメーターを持ちます。ただし、型を返す場合、サブクラスのメソッドは、スーパークラスのメソッドの戻り型のサブタイプを返すことができます。 例 次の例を見ると、スーパークラスには demoMethod()という名前のメソッドがあります タイプリストの値を返します。このメソッドをオーバーライドすると、サブクラスのメソッドはリストタイプの値を返すことができます。 (スーパークラスにあります)または、リストのサブタイプを返すこともできます (スーパークラスのメソッドの戻り型)ArrayList、Stack、Vectorなど
-
Javaコンストラクターは値を返しますが、何ですか?
いいえ。 Javaコンストラクタは値を返すことができません。必要に応じて、必要なコンストラクターを呼び出し、必要な値を返すメソッドを作成するだけです。以下の例を参照してください。 public class Tester { public Tester(){} public static Tester getInstance(){ Tester tester = new Tester(); return tester; }
-
Javaでインスタンス初期化ブロックを使用するのはなぜですか?
インスタンス初期化ブロックはコンストラクターに似ています。オブジェクトごとに1回呼び出され、インスタンス変数の初期値を設定するために使用できます。以下の例を参照してください。 public class Tester { public int a; { a = 10; } public static void main(String[] args) { System.out.println(new Tester().a); } } It
-
Javaでパッケージを使用する利点
Javaでパッケージを使用する利点は次のとおりです- プログラマーは独自のパッケージを定義して、クラス/インターフェースなどのグループをバンドルできます。 プログラマーがクラス、インターフェース、列挙、およびアノテーションが関連していることを簡単に判断できるように、実装した関連クラスをグループ化することをお勧めします。 パッケージは新しい名前空間を作成するため、他のパッケージの名前と名前が競合することはありません。 パッケージを使用すると、アクセス制御を簡単に提供できます 関連するクラスを見つけるのも簡単です。 多くのモジュールを含む非常に大規模なアプリケーションを開発したとします。モ
-
Javaでパッケージをコンパイルする方法
動物と呼ばれるパッケージを作成する例を見てみましょう。クラスやインターフェースの名前との競合を避けるために、小文字のパッケージ名を使用することをお勧めします。 次のパッケージ例には、animalsという名前のインターフェースが含まれています- /* File name : Animal.java */ package animals; interface Animal { public void eat(); public void travel(); } では、上記のインターフェースを同じパッケージの動物に実装しましょう- package
-
Javaパッケージプログラムの実行方法
動物と呼ばれるパッケージを作成する例を見てみましょう。クラスやインターフェースの名前との競合を避けるために、小文字のパッケージ名を使用することをお勧めします。 次のパッケージ例には、animalsという名前のインターフェースが含まれています- /* File name : Animal.java */ package animals; interface Animal { public void eat(); public void travel(); } それでは、上記のインターフェースを同じパッケージの動物に実装しましょう- pack
-
別のパッケージからJavaパッケージにアクセスする方法
ボスクラスが給与パッケージで定義されている例を使用して理解できます。 package payroll; public class Boss { public void payEmployee(Employee e) { e.mailCheck(); } } Employeeクラスが給与パッケージに含まれていない場合はどうなりますか?次に、Bossクラスは、別のパッケージのクラスを参照するために、次のいずれかの手法を使用する必要があります。 クラスの完全修飾名を使用できます。例- payroll.
-
Javaで他のパッケージのクラスを使用する方法
ボスクラスが給与パッケージで定義されている例を使用して理解できます。 package payroll; public class Boss { public void payEmployee(Employee e) { e.mailCheck(); } } Employeeクラスが給与パッケージに含まれていない場合はどうなりますか?次に、Bossクラスは、別のパッケージのクラスを参照するために、次のいずれかの手法を使用する必要があります。 クラスの完全修飾名を使用できます。例- payroll.
-
他のパッケージのJavaクラスへのアクセス。
ボスクラスが給与パッケージで定義されている例を使用して理解できます。 package payroll; public class Boss { public void payEmployee(Employee e) { e.mailCheck(); } } 従業員クラスが給与パッケージに含まれていない場合はどうなりますか?次に、Bossクラスは、別のパッケージのクラスを参照するために、次のいずれかの手法を使用する必要があります。 クラスの完全修飾名を使用できます。例- payroll
-
Javaでサブパッケージを使用する方法は?
サブパッケージはサブディレクトリに似ています。例を考えてみましょう。同社には、Dell.javaソースファイルを含むcom.apple.computersパッケージがあり、このような一連のサブディレクトリに含まれていました- ....\com\apple\computers\Dell.java コンパイル時に、コンパイラーは、クラス、インターフェース、および列挙型で定義されているものごとに異なる出力ファイルを作成します。出力ファイルのベース名はタイプの名前であり、その拡張子は.classです。 例- // File Name:Dell.java package com.apple.compu
-
Javaのパッケージ
パッケージは、名前の競合を防ぎ、アクセスを制御し、クラス、インターフェイス、列挙、アノテーションの検索/検索と使用を容易にするためなどにJavaで使用されます。 パッケージは、アクセス保護と名前空間管理を提供する関連タイプ(クラス、インターフェイス、列挙、および注釈)のグループとして定義できます。 Javaの既存のパッケージのいくつかは-です java.lang-基本クラスをバンドルします java.io-入出力関数のクラスは、このパッケージにバンドルされています プログラマーは独自のパッケージを定義して、クラス/インターフェースなどのグループをバンドルできます。プログラマーがクラ
-
フォルダまたはJavaパッケージから実行時にクラスをロードする方法
CLASSPATHを使用すると、実行時に任意のクラスをロードできます。 .javaソースファイルと同様に、コンパイルされた.classファイルは、パッケージ名を反映する一連のディレクトリにある必要があります。ただし、.classファイルへのパスは、.javaソースファイルへのパスと同じである必要はありません。 -のように、ソースディレクトリとクラスディレクトリを別々に配置できます。 <path-one>\sources\com\apple\computers\Dell.java <path-two>\classes\com\apple\computers\Dell.c
-
2つのパブリッククラスをJavaパッケージに入れる方法。
はい。唯一の条件は、個別のJavaファイルに1つのパブリッククラスがあることです。
-
Javaでの継承の種類
Javaは3種類の継承をサポートしています- 単一レベルの継承-クラスは単一のクラスからプロパティを継承します。たとえば、クラスBはクラスAを継承します。 マルチレベル継承-クラスは、プロパティを継承するクラスからプロパティを継承します 階層継承-複数のクラスが単一のクラスからプロパティを継承します。たとえば、クラスBはクラスAを継承し、クラスCはクラスAを継承します。
-
Javaでの単一レベルの継承
単一レベルの継承-クラスは単一のクラスからプロパティを継承します。たとえば、クラスBはクラスAを継承します。 例 class Shape { public void display() { System.out.println("Inside display"); } } class Rectangle extends Shape { public void area() { System.out.println(
-
Javaでのマルチレベル継承
マルチレベルの継承-クラスは、プロパティを継承するクラスからプロパティを継承します。 例 class Shape { public void display() { System.out.println("Inside display"); } } class Rectangle extends Shape { public void area() { System.out.println("Inside
-
Javaで多重継承がサポートされていない理由
Javaでは、クラスは複数のクラスを拡張できません。したがって、以下は違法です- 例 public class extends Animal, Mammal{} ただし、クラスは1つ以上のインターフェースを実装できるため、Javaは多重継承の不可能性を取り除くことができます。 この背後にある理由は、あいまいさを防ぐためです。 クラスBがクラスAとクラスCを拡張し、クラスAとCの両方が同じメソッドdisplay()を持っている場合を考えてみます。 現在、Javaコンパイラは、どの表示メソッドを継承するかを決定できません。このような状況を防ぐために、Javaでは多重継承は許可されていません
-
Javaでの集約
集約とはHAS-A関係を指します。最初に例を見てみましょう- 例 public class Vehicle{} public class Speed{} public class Van extends Vehicle { private Speed sp; } これは、クラスVanHAS-ASpeedを示しています。 Speed用に別のクラスを用意することで、speedに属するコード全体をVanクラス内に配置する必要がなくなり、複数のアプリケーションでSpeedクラスを再利用できるようになります。 オブジェクト指向機能では、ユーザーはどのオブジェクトが実際の作業を