Android
 Computer >> コンピューター >  >> プログラミング >> Android

lateInit変数がKotlinで初期化されているかどうかを確認するにはどうすればよいですか?


宣言後に初期化される変数は、「後期初期化変数」と呼ばれます。従来のプログラミング言語では、NULL以外のタイプの変数はコンストラクターで初期化する必要があります。しかし、誤って、開発者がこれらのNULLチェックを実行するのを忘れて、プログラミングエラーが発生することがあります。この状況を回避するために、Kotlinは「lateInit」と呼ばれる新しい修飾子を導入しました。この修飾子に加えて、Kotlinは、この変数が初期化されているかどうかを確認するためのいくつかのメソッドを提供します。

「lateInit」変数を作成するには、その変数のアクセス修飾子としてキーワード「lateInit」を追加する必要があります。以下は、Kotlinで「lateInit」を使用するために従う必要のあるいくつかの条件です-

  • 可変変数で「lateInit」を使用します。つまり、「lateInit」で「var」キーワードを使用する必要があります。

  • 「lateInit」は、NULL不可のデータ型でのみ許可されます。

  • 「lateInit」はプリミティブデータ型では機能しません。

  • 「lateInit」は、変数プロパティに getterがない場合に使用できます。 およびセッター メソッド。

この例では、変数を「lateInit」変数として宣言し、Kotlinライブラリ関数を使用して変数が初期化されているかどうかを確認します。

class Tutorial {

   lateinit var name : String

   fun checkLateInit(){
      println(this::name.isInitialized)
      // it will print false as the value is not initialized

      // initializing name
      name = "www.tutorialspoint.com/"
      println(this::name.isInitialized)
      // It will return true
   }
}

fun main() {
   var obj=Tutorial();
   obj.checkLateInit();
}

出力

コードを実行すると、次の出力が生成されます-

false
true

2番目のケースでは、変数 name が初期化されるため、Trueを返します。


  1. Webカメラがハッキングされているかどうかを確認する方法

    誰かがあなたのコンピュータのウェブカメラを制御するとき、それはカムフェクティングと呼ばれます。これは、信頼できるソースからのものであると考えてダウンロードした可能性のあるウイルスを介して可能です。 カムフェクティングにより、反対側の人は何でも、誰でも写真やビデオを撮ることができます。ウェブカメラがハッキングされているかどうかを確認するためのいくつかの兆候があります。 1。 LEDの点滅 Webカメラがハッキングされた一般的な症状の1つは、Webカメラの横にあるLEDライトの点滅です。これは、Webカメラが実行されていることを示します。 Webカメラが自動的にオンになった原因を調べる必要があ

  2. 私のウェブサイトはハッキングされていますか? Web サイトがハッキングされているかどうかを確認する方法

    「私のウェブサイトはハッキングされたのではないか? 」 それとも、何かおかしいことに気づいたからといって、ただ心配しているだけですか?いずれにせよ、パニックにならないでください。問題を理解しようとすることで、あなたはすでに先を行っています。 毎週、Google は 20,000 を超える Web サイトをブラックリストに登録し、50,000 の Web サイトにマルウェアのフラグを立てています。このことを考えると、セキュリティ アラートによって頭痛の種が半減したかもしれません。 ただし、まず、MalCare で WordPress サイトをスキャンして、Web サイトがハッキン