検索

Javaの概要+環境構築

Jun 23, 2017 pm 04:27 PM
java概要環境

以前に書いた記事:

Javaの基本を何度か読んだのですが、しばらくすると忘れてしまったので、今回は将来参照しやすいように時間をかけて一連のブログを整理することにしました。このシリーズは、Java プログラミングのアイデア + Java コア技術の 2 冊をベースにまとめられています。この 2 冊も、読むたびに異なる結果が得られるので、ぜひ読んでいただきたい 2 冊です。間違いなくお互いを補い合い、大きな利益をもたらしますので、ご期待ください。

セクション 1: Java の紹介

Java は、1995 年 5 月に Sun によって発表されたオブジェクト指向プログラミング言語です。オブジェクト指向の理論を非常によく実装しており、オブジェクトにさらに注意を払っています。イベントのプロセスにあまり注意を払う必要はありません。

Javaは、Javaプログラミング言語+Javaクラスフォーマットファイル+Java仮想マシン+Javaアプリケーションプログラムインターフェースの4つの部分で構成されており、IDEを通じてさまざまなクラスファイルを定義し、クラスメソッド(Java API)を呼び出すことでリソースにアクセスします。システムはソース ファイル を .class ファイルにコンパイルし、そのファイルを Java 仮想マシンを通じて実行します。

Java ホワイトペーパー:

  • 簡潔さ: C++ などで理解しにくいヘッダー ファイル ポインタを排除し、構文がシンプルで理解しやすい。クラス ライブラリは小さいが、クラス ライブラリの増加とスレッドのサポート サイズの増加により、オブジェクト指向が追加されました。オブジェクト自体にもっと注意を払うようになり、実装プロセスにあまり注意を払う必要がなくなりました。

  • ネットワークスキル: Java のネットワーク機能はシンプルで使いやすく、http や ftp などの TCP/IP プロトコルを処理するために使用され、URL を介してネットワーク上のオブジェクトを開いたり、アクセスしたりすることができます。

  • 堅牢性: Java の強力な型指定メカニズム、例外処理、自動ガベージ コレクションなどは、Java プログラムの堅牢性を保証する重要な要素です。 Java は、メモリの上書きやデータの損傷の可能性を排除するためにポインタ モデルを使用します。Java は文字列配列やその他の機構を構築するためにポインタを使用する必要はありませんが、必要に応じて、Java にはリンク リストなどのポインタ機能もあります。

  • セキュリティ: Java にはポインターがないため、プログラマは、メモリを指すための隠れたインサイダー ポインターや偽のポインターを取得できません。さらに重要なのは、Java コンパイラはストレージ配置の決定を処理しないため、プログラマは宣言を見てクラスの実際のストレージ配置を推測することができません。コンパイルされた Java コード内のストレージ参照により、Java インタープリタによる実行時に実際のストレージ アドレスが決定されます。

  • 移植性: Java は、言語宣言を実装の側面から独立させます。たとえば、Java は、各基本データ型のサイズと操作動作を明示的に示します (これらのデータ型は Java 構文で記述されます)。 Java 環境自体は、新しいハードウェア プラットフォームやオペレーティング システムに移植可能です。 Java コンパイラも Java で書かれていますが、Java ランタイム システムは ASIC 言語で書かれています。

  • 解釈性: Java プログラムは Java プラットフォーム上でバイトコード形式にコンパイルされ、この Java プラットフォームを実装する任意のシステム上で実行できます。実行時に、Java プラットフォームの Java インタープリタがこれらのバイトコードを解釈して実行し、実行中に必要なクラスが接続フェーズで実行環境にロードされます。

  • 高いパフォーマンス: Java プログラムは、Java インタープリタとランタイム システムを実装する任意のシステム上で実行できます。

  • マルチスレッド: マルチスレッドにより、インタラクティブな応答とユーザーの動作が向上します。

  • 動的性: Java 言語は、環境の変化に適応するように設計されています。たとえば、Java のクラスはオンデマンドでロードされ、一部のクラスはネットワーク経由で取得されることもあります。

セクション 2: Java 開発の歴史

  1. 1991 年、Sun Company はケーブル TV コンバーター ボックスに似たデバイスの開発を準備しており、プロジェクトは Green と名付けられました。コードは短くコンパクトで、Pascal 言語に基づいて、仮想マシンで生成される中間コード、つまり Java 仮想マシン

    を考慮して設計されています。

  2. Green Project (First Pascal Company) は 1994 年に解散しました

  3. 1995 年 5 月 23 日、SunWorld で Java がデモンストレーションされ、偉大な Java 言語が誕生しました

  4. Sun が Java をリリース最初のバージョンである Java 1.0 バージョンは、実際には開発で使用できませんでした。Java 1.2 バージョン (Standard Edition-J2SE-JavaSE) は 1998 年 12 月にリリースされました。このバージョンは、Java の「一度書いたらどこでも実行できる」という概念に近づいています。 、3 日後にリリース (Micro Edition - J2ME - JavaME) および (Enterprise Edition - J2EE - JavaEE)

  5. Java 1.3 2000 年リリース

  6. Java 1.4 2002 年リリース

  7. 2004 年、Java は、もう 1 つの大きなマイルストーンとも言える言語に大きな改良を加え、正式に Java 5.0 バージョンと名付けられ、ジェネリックス、foreach ループ、列挙などの概念が追加されました

  8. 2006年 The Java 6バージョンは 2009 年にリリースされました

  9. 2009 年、かつて栄華を誇った Sun Company の帝国はついに崩壊し、Oracle に買収された後、Java は停滞期に入りました

  10. Java 7 バージョンは 2011 年にリリースされました。

  11. 2014年にリリースされたJava 8バージョン

  12. セクション3: Java開発環境のセットアップ

JDK (Java Development Kit): Javaプログラムを作成するプログラマーが使用するソフトウェア


  • JRE: Javaプログラムを実行するために使用されるソフトウェア

  • IDE: eclipse、ideaなどの統合開発環境

  • JDKのダウンロードアドレス:。注: デフォルトのインストール パスは、Program Files の下にあります。不要なトラブルを避けるために、パスを変更するか、スペースを置き換えることをお勧めします。

ディレクトリ構造:


  • bin: コンパイラとツール

    • db: Javaによって開発されたリレーショナルデータベースファイル

    • include: 以下のファイルに使用されます。ローカルメソッドをコンパイルする

    • javafx-src: JavaFX スクリプトは宣言型の静的型付けプログラミング言語です

    • jre: Java ランタイム環境ファイル

    • lib: クラスライブラリファイル

    • src: クラスライブラリのソースファイル

    • 環境変数設定:

JAVA_HOME: D:Javajdk1.8.0_31 jdkのインストールディレクトリを指しており、Eclipse/NetBeans/Tom catなどのソフトウェアはFind JAVA_HOME 変数を検索して、インストールされた JDK を使用します。

PATH: %JAVA_HOME%bin; その機能は、javac などのコマンドを実行して Java プログラムをコンパイルするときに、PATH 変数で指定されたパスを検索します。対応するコマンド プログラムが見つかるかどうかを確認します。 jdk インストール ディレクトリの下にある bin ディレクトリを既存の PATH 変数に追加する必要があります。bin ディレクトリには、javac/java/javadoc などの頻繁に使用される実行可能ファイルが含まれています。PATH 変数を設定した後、任意のディレクトリにその変数を入力できます。javac を実行します。 /java およびその他のツール。

CLASSPATH: .;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jarは、作成したクラスを使用するために、当然前提条件となります。 JVM は CLASSPATH を使用してクラスを検索します。 jdk インストール ディレクトリの下の lib サブディレクトリにある dt.jar と tools.jar を CLASSPATH に設定する必要があります。もちろん、現在のディレクトリもこの変数に追加する必要があります。

環境変数の検証:

CMD 検証: 「Java -version」と入力して Enter キーを押します。コンソールに jdk のバージョン番号が出力され、インストールが成功したことが示されます。

新しい HelloWorld.java ファイルを作成し、対応するディレクトリに入り、 javac HelloWorld.java と入力して Enter を押し、次に java HelloWorld と入力して Enter を押すと、コンソールに Hello World が出力され、環境変数の設定が成功したことが示されます。

注: javac プログラムは、HelloWorld.Java を HelloWorld.class ファイルにコンパイルし、Java 仮想マシンに送信します。仮想マシンは、コンパイラによってクラス ファイルに配置されたバイトコードを実行します。

注: コンパイルするファイルには、コンパイル時にサフィックス名 (HelloWorld.java) を指定する必要があります。実行時にクラス名を指定するだけでよく、サフィックスは必要ありません (HelloWorld)。

以上がJavaの概要+環境構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?Mar 17, 2025 pm 05:46 PM

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?Mar 17, 2025 pm 05:45 PM

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?Mar 17, 2025 pm 05:44 PM

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?Mar 17, 2025 pm 05:43 PM

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Mar 17, 2025 pm 05:35 PM

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境