ホームページ Java &#&チュートリアル マルチスレッド用の匿名内部クラス

マルチスレッド用の匿名内部クラス

Dec 15, 2016 pm 01:29 PM
匿名内部クラス

package Thread;
/**
 * @author  FlyFire
 * @date:2011-10-27 下午07:37:38
 * @introduce :以匿名内部类的方式创建线程
 * 
 */
public class InternalThread {

    //程序主函数
    public static void main(String args[]){
        for(int i=0;i<10;i++){
            InternalThread it=new InternalThread();
            it.startThread(i);
        }
    }
    //该方法会启动一个匿名线程
    public void startThread(int i){
        //要传入匿名线程内使用的参数必须定义为final型
            final int ID=i;
            Runnable runnable=new Runnable(){
                public void run(){
                    while(true){
                        /*
                         * Thread.sleep(long time)方法只是让线程暂停,而非退出
                         * 休眠时间结束后,VM会将线程重新调为运行状态。当线程在
                         * sleep状态时,如果VM或其他线程强行终止这个线程,sleep
                         * 方法会抛出InterruptedException异常,这叫做线程中断异常
                         * 所以,在调用sleep方法时,需要处理或抛出这个异常
                         */
                        try{
                            System.out.println(ID+"号线程已启动");
                            Thread.sleep(10000);
                        }catch(Exception e){
                            e.printStackTrace();
                        }
                        
                    }
                }
            };
        Thread thread=new Thread(runnable);
        thread.start();
    }
}
ログイン後にコピー


マルチスレッドの匿名内部クラスに関連するその他の記事については、PHP 中国語 Web サイトに注目してください。



このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Java の匿名内部クラスはメモリ リークの問題をどのように解決しますか? Java の匿名内部クラスはメモリ リークの問題をどのように解決しますか? May 01, 2024 pm 10:30 PM

匿名の内部クラスはメモリ リークを引き起こす可能性があります。問題は、匿名の内部クラスが外部クラスへの参照を保持し、外部クラスのガベージ コレクションが妨げられることです。解決策には次のものが含まれます。 1. 弱参照を使用します。外部クラスが強参照によって保持されなくなった場合、ガベージ コレクターは弱い参照オブジェクトをすぐにリサイクルします。ガベージ コレクション中にメモリが必要になるため、ソフト参照オブジェクトがリサイクルされます。 Android アプリケーションなどの実戦では、匿名内部クラスによるメモリ リークの問題は、弱参照を使用することで解決でき、リスナーが不要な場合には匿名内部クラスを再利用できます。

Java の匿名内部クラスの設計パターンは何ですか? Java の匿名内部クラスの設計パターンは何ですか? May 02, 2024 pm 04:42 PM

匿名内部クラスは、明示的な名前を持たず、new 式を通じて作成される Java の特別な内部クラスであり、主に特定のインターフェイスの実装または抽象クラスの拡張に使用され、作成直後に使用されます。一般的な匿名内部クラスの設計パターンには次のものがあります。 アダプター パターン: 1 つのインターフェイスを別のインターフェイスに変換します。戦略パターン: アルゴリズムの定義と置換。オブザーバー パターン: オブザーバーを登録し、イベントを処理します。これは、文字列の長さによる TreeSet の並べ替え、匿名スレッドの作成など、実際のアプリケーションで非常に役立ちます。

Java の匿名内部クラスの利点は何ですか? Java の匿名内部クラスの利点は何ですか? Apr 30, 2024 am 11:39 AM

匿名内部クラスは、サブクラス化、コードの簡素化、およびイベント (ボタンのクリックなど) の処理を​​容易にする特別な内部クラスとして Java で使用されます。実際のケースは次のとおりです。 イベント処理: 匿名の内部クラスを使用して、ボタンのクリック イベント リスナーを追加します。データ変換: Collections.sort メソッドと匿名内部クラスをコンパレータとして使用してコレクションを並べ替えます。

Java 匿名内部クラスが使用に適さないのはどのようなシナリオですか? Java 匿名内部クラスが使用に適さないのはどのようなシナリオですか? May 03, 2024 pm 05:42 PM

匿名内部クラスは、プライベート メンバーにアクセスする必要がある、複数のインスタンスが必要な、継承が必要な、ジェネリック型にアクセスする必要がある場合の使用には適していません。

Java 匿名内部クラスの制限は何ですか? Java 匿名内部クラスの制限は何ですか? May 01, 2024 pm 02:18 PM

匿名内部クラスの制限には、外部ローカル変数にアクセスできないこと、チェックされたコードの冗長性をスローできないこと、および

Java の匿名内部クラスでよくある間違いは何ですか? Java の匿名内部クラスでよくある間違いは何ですか? May 02, 2024 am 09:03 AM

匿名内部クラスの使用エラー: 非スレッドセーフ環境で未宣言の例外をキャッチすることを使用してスコープ外の変数にアクセスする

Java 匿名内部クラスのパフォーマンスを最適化するにはどうすればよいですか? Java 匿名内部クラスのパフォーマンスを最適化するにはどうすればよいですか? May 02, 2024 am 08:48 AM

匿名内部クラスのパフォーマンスの問題は、それらが使用されるたびに再作成されることです。これは、次の戦略によって最適化できます。 1. 匿名内部クラスをローカル変数に格納する。 2. 非静的内部クラスを使用する。 3. ラムダを使用する。表現。実際のテストでは、ラムダ式の最適化が最も効果的であることが示されています。

Java 匿名内部クラスのライフサイクルは何ですか? Java 匿名内部クラスのライフサイクルは何ですか? May 01, 2024 pm 04:06 PM

匿名内部クラスの有効期間は、そのスコープによって決まります。 メソッドローカル内部クラス: それを作成したメソッドのスコープ内でのみ有効です。コンストラクターの内部クラス: 外部クラスのインスタンスにバインドされ、外部クラスのインスタンスが解放されると解放されます。静的内部クラス: 外部クラスと同時にロードおよびアンロードされます。

See all articles