個人財務 リソースでJava try文を使用する方法 - ダミー

リソースでJava try文を使用する方法 - ダミー

ビデオ: 【コマンド】建築に便利なコマンド教えます。[番外編][PC][java] 2024

ビデオ: 【コマンド】建築に便利なコマンド教えます。[番外編][PC][java] 2024
Anonim

2つの異なるファイルまたは Scanner とディスクから入力を取得するJavaプログラムを想像してくださいファイル。正しくクリーンアップするためには、 近い メソッド呼び出しを finally 節に置きます。

import java。 io。ファイル;

import java。 io。 IOException;

import java。 util。スキャナ;

public class Main {

<! public static void main(String args []){

スキャナscan1 = null;

スキャナscan2 =ヌル。

try {

scan1 =新しいスキャナ(新しいファイル( "File1。txt"));

scan2 =新しいスキャナ(新しいファイル( "File2。txt"));

//有用なものを行う

} catch(IOException e){

<! - 2 - >

//おっと!

} finally {

scan1。閉じる();

scan2。閉じる();

システム。でる。 println( "完了!");理論上、コンピュータは常に

scan1を実行する。 close()

および

scan2。

try

節の実行中に何が問題になっても、close() しかしそれは理論です。実際には、別のプログラマー(もちろんあなたではない)が try 節の真ん中で scan1 を閉じることによってコードを修正するかもしれません: <! - 3 - > try { scan1 =新しいスキャナ(新しいファイル( "File1。txt")); scan2 =新しいスキャナ(新しいファイル( "File2。txt")); //便利なことをするだけでなく、…

scan1。閉じる();

scan1 = null;

} catch(IOException e){

//おっと!

} finally {

scan1。閉じる();

scan2。閉じる();

システム。でる。 println( "完了!");

}

<! - 1 - >

今あなたは本当の苦境を抱えています。

finally

節の中で、

scan1

の値は

null です。 scan1への呼び出し。 close() は失敗するので、プログラムは NullPointerException をスローし、 scan2の呼び出しに達する前に実行を停止します。 close() 最悪の場合、 scan2 は閉じられず、プログラムには File2があります。 txt は他のプログラムがファイルを使用できないようにロックアップされています。 <!プログラムがいくつかのリソース(多くのファイル、データベース、ファイルなど)を使用する場合、 try 文のビルドは非常に複雑になります。 catch 節とあらゆる種類のクレイジーな組み合わせの中で

試し

することができます。しかし、Javaでは問題を解決するためのより良い方法があります。Java 7(およびそれ以降のバージョンのJava)では、 のtry-with-resourcesステートメントを作成できます。 このコードは、どのようにあなたを示しています。 <! - 3 - > import java。 io。ファイル; import java。 io。 IOException; import java。 util。スキャナ; public class NewMain { public static void main(String args []){ try(スキャナのスキャン1 =新しいスキャナ(新しいFile( "File1。

catch(IOException e){

//Oops( "txt")));

スキャナーscan2 =新しいスキャナーこのコードでは、

scan1

の宣言は、

scan1

try

という単語の後に括弧で囲まれています。カッコで囲まれた宣言は、

のステートメントの実行後に自動的に

scan1

scan2 < > try 節の括弧の中にいくつかのリソースを宣言することができますが、Javaは try 節の文の実行後に自動的にすべてのリソースを閉じます。必要に応じて catch 句と finally 句を追加して、あらゆる種類のリソース(ファイル、データベース、サーバへの接続など)にアクセスし、 Javaは接続を自動的に切断します。 人生は良いです。

リソースでJava try文を使用する方法 - ダミー

エディタの選択

Drupalフォーラムの有効化 - ダミー

Drupalフォーラムの有効化 - ダミー

フォーラムはユーザーコミュニティを作成するのに最適です。人々は他者からの援助を得ることができ、あなたのコンテンツに関するフィードバックを提供し、単純に社会化することができます。あなたのDrupalフォーラムは、あなたが望むようにしっかりとまたはゆるやかに制御することができます。フォーラムで許可されているカテゴリを制御できます。フォーラムの例を見るには、Drupal Forumを参照してください。 ...

ドリューパルフレンドリーなウェブホスティング会社 - ダミー

ドリューパルフレンドリーなウェブホスティング会社 - ダミー

ウェブホスティング会社は、あなたがDrupalをインストールし、あなたのサイトをウェブ上に見えるようにするWebサーバー。一部の企業では、Drupalをインストールしたり、ワンクリックでインストールすることができます。あなたがDrupalのインストールをスキップする場合は、次のいずれかのアカウントを取得することを検討してください。

Drupalガーデンサイト構造管理 - ダミー

Drupalガーデンサイト構造管理 - ダミー

Drupal Garden Structureページでは、 、ページ、およびブロックを表示します。このページから制御できる特定の機能、ブロック、およびページには、連絡先フォーム、フォーラム、メーリングリストなどがあります。ブロックで表示される機能をブロックで管理することもできます。

エディタの選択

エグゼクティブとのデータマイニング - ダミー

エグゼクティブとのデータマイニング - ダミー

数字で遊ぶという楽しみのためにデータマイニングに取り掛からない。あなたは行動を望む。あなたは正しいことを見たいと思っています。データからの確かな証拠に基づいてビジネス上の決定を下すことが重要であることを理解しています。しかし、あなたは決定を下す権限を持つ人ではありません。だからあなたは...

ビッグデータガバナンスチャレンジ - ダミー

ビッグデータガバナンスチャレンジ - ダミー

データガバナンスは、大きなデータソースが彼らがどのように管理されているか。従来のデータウェアハウスやリレーショナルデータベース管理の世界では、データ保護の必要性に関するルールをよく理解している可能性があります。たとえば、医療界では、それは...

エディタの選択

エレクトロニクスコンポーネント:赤外線ライトダミーを作成する方法

エレクトロニクスコンポーネント:赤外線ライトダミーを作成する方法

赤外線を電気的に生成するには、赤外線スペクトルで動作する特殊な発光ダイオード(LED)を使用します。赤外線LED(しばしばIR LEDと呼ばれる)は、RadioShackまたは電子部品を販売する他の店で容易に入手できます。 IR LEDは、通常のLEDと似ていますが、光を見ることはできません。

デジタルエレクトロニクス:キット74のDOSコマンド - ダミーの

デジタルエレクトロニクス:キット74のDOSコマンド - ダミーの

を通して、あなたの電子プロジェクトを制御する場合パラレルポートであるKit 74 DOSソフトウェアは、コマンドプロンプトから実行できるRELAY、DELAY、WAITFORの3つのコマンドで構成されています。 RELAYコマンドRELAYコマンドは、1バイトのデータをパラレルポートに送信します。あなたから実行できること - RELAY、DELAY、およびWAITFOR - 8つの出力端子のそれぞれが...

デジタルエレクトロニクス:フリップフロップ回路の種類? - エレクトロニクスではダミー

デジタルエレクトロニクス:フリップフロップ回路の種類? - エレクトロニクスではダミー

、フリップフロップは特殊なタイプのゲートラッチ回路です。フリップフロップにはいくつかの異なるタイプがあります。フリップフロップの最も一般的なタイプは次のとおりです。SRフリップフロップ:SRラッチに似ています。 CLOCK入力に加えて、SRフリップフロップにはSETとRESETという2つの入力があります。 SET入力がHIGHの場合...