JDK 10 リリースでは、70 以上の新しい API とオプションが Java ライブラリに追加されました。以下は、導入された重要な機能強化の一部です。 Optional.orElseThrow() メソッド 新しいメソッド orElseThrow() get() の代替として推奨される java.util.Optional クラスで利用可能 メソッド。 変更不可能なコレクションを作成するための API 新しいメソッド copyOf() 既存のコレクション インスタンスから新しいコレクション インスタンスを作成できる List、Set、および Map インターフェイスで使用できます。 C
JEP 286 - ローカル変数の型推論 ローカル変数の型推論は、Java 10 以降で利用できる言語への最も明白な変更の 1 つです。変数の型を指定せずに、var を使用して変数を定義できます。コンパイラは、提供された値を使用して変数の型を推測します。この型推論は、ローカル変数に制限されています。 ローカル変数を宣言する古い方法 String name = Welcome to tutorialspoint.com; ローカル変数を宣言する新しい方法 var name = Welcome to tutorialspoint.com; コンパイラは、提供された値を検査することにより、na
JEP 322 − 時間ベースのリリース バージョニング Java 10 以降、Oracle は Java リリースに厳密な時間ベースのリリース バージョン管理モデルを導入しました。現在、Java は 6 か月ごとにメジャー リリースされます。 Java 10 は 2018 年 3 月にリリースされ、その後、すべてのメジャー バージョンが今後数年間の 3 月と 9 月にリリースされる予定です。リリースは、さらに 3 つの広範なカテゴリに分類されます。 機能リリース − フィーチャー リリースには、言語固有の機能、JVM 機能、新規/改善された API、API の削除/非推奨が含まれます
オンライン ライブ デモ オプション Java プログラミング環境をオンラインでセットアップしたので、利用可能なすべての例をオンラインでコンパイルして実行できます。これにより、読んでいる内容に自信が持てるようになり、さまざまなオプションでプログラムを検証できるようになります。例を自由に変更して、オンラインで実行してください。 Live Demo を使用して次の例を試してください 以下のサンプル コード ボックスの右上隅で利用可能なオプション − public class MyFirstJavaProgram { public static void main(String []args
Java 10 は Java リリース ケイデンスのメジャー リリースであり、2018 年 3 月 10 日にリリースされました。Java 10 では、Oracle は Java リリース ケイデンスを新しいモデル、6 か月のリリース ケイデンス、および Oracle Java SE 製品の LTS モデルに変更しました。 LTS モデルは Long Term Support モデルの略です。 Java 10 以降、Oracle は 6 か月ごとに新しいバージョンの Java をリリースし、各バージョンには 1 つまたは 2 つの主要な機能が含まれています。 Oracle は、リリース トレ
Java 言語は 3 種類のコメントをサポートします − Sr.No. コメントと説明 1 /* テキスト */ コンパイラは /* から */ までのすべてを無視します。 2 //テキスト コンパイラは // から行末まですべてを無視します。 3 /** ドキュメント */ これはドキュメント コメントであり、一般に ドキュメント コメント と呼ばれます。 . JDK javadoc ツールは ドキュメント コメント を使用します 自動生成されたドキュメントを準備するとき。 この章では、Javadoc について説明します。 Javadoc を利用し
アプレット Web ブラウザーで実行される Java プログラムです。アプレットは Java API 全体を自由に使用できるため、完全に機能する Java アプリケーションにすることができます。 アプレットとスタンドアロン Java アプリケーションの間には、次のような重要な違いがいくつかあります − アプレットは、java.applet.Applet クラスを拡張する Java クラスです。 main() メソッドはアプレットで呼び出されず、アプレット クラスは main() を定義しません。 アプレットは、HTML ページに埋め込むように設計されています。 ユーザ
Java は マルチスレッド プログラミング言語 これは、Java を使用してマルチスレッド プログラムを開発できることを意味します。マルチスレッド プログラムには、同時に実行できる 2 つ以上の部分が含まれており、特にコンピューターに複数の CPU がある場合に、各部分が同時に異なるタスクを処理して、利用可能なリソースを最適に利用できます。 定義上、マルチタスクとは、複数のプロセスが CPU などの共通の処理リソースを共有することです。マルチスレッドは、マルチタスクの概念をアプリケーションに拡張したもので、単一アプリケーション内の特定の操作を個々のスレッドに細分化できます。各スレッドは並行
Java アプリケーションを使用して電子メールを送信するのは簡単ですが、最初に JavaMail API が必要です。 および Java Activation Framework (JAF) Java の標準 Web サイトから JavaMail の最新バージョン (バージョン 1.2) をダウンロードできます。 最新バージョンの JAF (バージョン 1.1.1) は、Java の標準 Web サイトからダウンロードできます。 これらのファイルをダウンロードして解凍します。新しく作成された最上位ディレクトリに、両方のアプリケーション用の多数の jar ファイルがあります。
ネットワーク プログラミングという用語 ネットワークを使用してすべてのデバイスが相互に接続されている複数のデバイス (コンピューター) で実行されるプログラムを作成することを指します。 J2SE API の java.net パッケージには、低レベルの通信の詳細を提供するクラスとインターフェースのコレクションが含まれており、目前の問題を解決することに重点を置いたプログラムを作成できます。 java.net パッケージは、2 つの一般的なネットワーク プロトコルのサポートを提供します − TCP − TCP は Transmission Control Protocol の略で、2 つ
Java は、オブジェクトのデータだけでなく、オブジェクトの型とオブジェクトに格納されているデータの型に関する情報を含むバイトのシーケンスとしてオブジェクトを表すことができる、オブジェクトのシリアル化と呼ばれるメカニズムを提供します。 シリアル化されたオブジェクトがファイルに書き込まれた後、そのオブジェクトをファイルから読み取って逆シリアル化できます。つまり、オブジェクトとそのデータを表す型情報とバイトを使用して、メモリ内にオブジェクトを再作成できます。 最も印象的なのは、プロセス全体が JVM に依存しないことです。つまり、あるプラットフォームでオブジェクトをシリアライズし、まったく別の
Integer 配列、String 配列、または順序付けをサポートする任意の型の配列内の要素を並べ替えることができる単一の並べ替えメソッドを記述できればよいでしょう。 Java ジェネリック メソッドとジェネリック クラスにより、プログラマは、単一のメソッド宣言で関連するメソッドのセットを指定するか、単一のクラス宣言で関連するタイプのセットをそれぞれ指定できます。 ジェネリックは、コンパイル時に無効な型をキャッチできるコンパイル時の型安全性も提供します。 Java のジェネリック コンセプトを使用して、オブジェクトの配列を並べ替えるジェネリック メソッドを作成し、整数配列、Double
Java 2 より前の Java では、Dictionary、Vector、Stack、 などのアドホック クラスが提供されていました。 とプロパティ オブジェクトのグループを保存および操作します。これらのクラスは非常に便利でしたが、中心となる統一的なテーマが欠けていました。したがって、Vector の使用方法は、Properties の使用方法とは異なりました。 コレクションフレームワークは、次のようないくつかの目標を満たすように設計されました- フレームワークは高性能でなければなりませんでした。基本的なコレクション (動的配列、リンク リスト、ツリー、およびハッシュ テーブル) の
Java ユーティリティ パッケージが提供するデータ構造は非常に強力で、幅広い機能を実行します。これらのデータ構造は、次のインターフェースとクラスで構成されています- 列挙 ビットセット ベクトル スタック 辞書 ハッシュテーブル プロパティ これらのクラスはすべてレガシーになり、Java-2 はコレクション フレームワークと呼ばれる新しいフレームワークを導入しました。これについては、次の章で説明します。 − 列挙 Enumeration インターフェイス自体はデータ構造ではありませんが、他のデータ構造のコンテキスト内では非常に重要です。 Enumeration インターフェイスは、デ
パッケージは Java で使用され、名前の競合を防ぎ、アクセスを制御し、クラス、インターフェース、列挙、および注釈の検索/配置と使用を容易にするなどの目的で使用されます。 パッケージ アクセス保護と名前空間管理を提供する、関連する型 (クラス、インターフェース、列挙、注釈) のグループとして定義できます。 Java の既存のパッケージのいくつかは − java.lang − 基本クラスをバンドル java.io − 入力、出力関数のクラスはこのパッケージにバンドルされています プログラマーは独自のパッケージを定義して、クラス/インターフェースなどのグループをバンドルできま
インターフェイスは Java の参照型です。クラスに似ています。抽象メソッドの集まりです。クラスはインターフェースを実装することで、インターフェースの抽象メソッドを継承します。 抽象メソッドに加えて、インターフェイスには、定数、既定のメソッド、静的メソッド、および入れ子になった型も含まれる場合があります。メソッド本体は、デフォルト メソッドと静的メソッドに対してのみ存在します。 インターフェイスの作成は、クラスの作成に似ています。しかし、クラスはオブジェクトの属性と動作を記述します。インターフェイスには、クラスが実装する動作が含まれます。 インターフェイスを実装するクラスが抽象クラスでな
カプセル化 4 つの基本的な OOP 概念の 1 つです。他の 3 つは、継承、ポリモーフィズム、および抽象化です。 Java のカプセル化は、データ (変数) とデータに作用するコード (メソッド) を 1 つのユニットとしてまとめてラップするメカニズムです。カプセル化では、クラスの変数は他のクラスから隠され、現在のクラスのメソッドを介してのみアクセスできます。そのため、データの隠蔽とも呼ばれます。 . Java でカプセル化を実現するには − クラスの変数をプライベートとして宣言します。 変数値を変更および表示するパブリック セッター メソッドとゲッター メソッドを提供しま
辞書によると、抽象化 イベントではなくアイデアを扱う品質です。たとえば、電子メールの場合、電子メールを送信するとすぐに何が起こるか、電子メール サーバーが使用するプロトコルなどの複雑な詳細は、ユーザーから隠されています。したがって、電子メールを送信するには、内容を入力し、受信者のアドレスを指定して、[送信] をクリックするだけです。 同様に、オブジェクト指向プログラミングでは、抽象化は実装の詳細をユーザーから隠すプロセスであり、機能のみがユーザーに提供されます。つまり、ユーザーは、オブジェクトがどのように動作するかではなく、何を行うかについての情報を得ることができます。 Java では、A
ポリモーフィズムとは、オブジェクトが多くの形をとる能力です。 OOP でのポリモーフィズムの最も一般的な使用は、親クラス参照が子クラス オブジェクトを参照するために使用される場合に発生します。 複数の IS-A テストに合格できる Java オブジェクトはすべて、ポリモーフィックであると見なされます。 Java では、すべてのオブジェクトが独自の型とクラス オブジェクトの IS-A テストに合格するため、すべての Java オブジェクトはポリモーフィックです。 オブジェクトにアクセスする唯一の可能な方法は、参照変数を使用することです。参照変数は、1 つのタイプのみにすることができます。一度
前の章では、スーパークラスとサブクラスについて話しました。クラスがそのスーパークラスからメソッドを継承する場合、メソッドが final とマークされていなければ、メソッドをオーバーライドする可能性があります。 オーバーライドの利点は、サブクラスの型に固有の動作を定義できることです。これは、サブクラスがその要件に基づいて親クラスのメソッドを実装できることを意味します。 オブジェクト指向の用語では、オーバーライドは既存のメソッドの機能をオーバーライドすることを意味します。 例 例を見てみましょう。 ライブデモ class Animal { public void move() {
Java