এটি একটি টীকা, তবে সঠিক নামটি হ'ল NonNull
:
protected void onSaveInstanceState(@NonNull Bundle outState)
(এবং যদিও)
import android.support.annotation.NonNull;
উদ্দেশ্যটি হ'ল সংকলককে সতর্ক করার অনুমতি দেওয়া যখন নির্দিষ্ট অনুমানগুলি লঙ্ঘিত হচ্ছে (যেমন কোনও পদ্ধতির প্যারামিটারের সর্বদা একটি মূল্য থাকা উচিত, যদিও এই নির্দিষ্ট ক্ষেত্রে যেমন অন্য কিছু রয়েছে)। থেকে সাপোর্ট টীকা ডকুমেন্টেশন:
@NonNull
টীকা নির্দেশ করে একটি প্রদত্ত পরামিতি নাল হতে পারে না ব্যবহার করা যাবে।
যদি কোনও স্থানীয় ভেরিয়েবল নাল হিসাবে পরিচিত হয় (উদাহরণস্বরূপ কারণ কিছু পূর্ববর্তী কোডটি নাল ছিল কিনা তা পরীক্ষা করা হয়েছে), এবং আপনি যে প্যারামিটারটিকে এমন কোনও পদ্ধতিতে পাস করেন যেখানে সেই পরামিতিটি @ ননল হিসাবে চিহ্নিত হয়েছে, আইডিই আপনাকে সতর্ক করবে যে আপনার কাছে রয়েছে একটি সম্ভাব্য ক্রাশ।
এগুলি স্থির বিশ্লেষণের সরঞ্জাম। রানটাইম আচরণটি একেবারেই বদলানো হয় না।
এই ক্ষেত্রে, নির্দিষ্ট সতর্কতা হ'ল আপনি যে মূল পদ্ধতিটি (ওভার Activity
) করছেন @NonNull
সেগুলি outState
প্যারামিটারে একটি টীকা রয়েছে , তবে আপনি এটিকে ওভাররাইড পদ্ধতিতে অন্তর্ভুক্ত করেননি। কেবল এটি যুক্ত করার ফলে সমস্যাটি ঠিক হওয়া উচিত ie
@Override
protected void onSaveInstanceState(@NonNull Bundle outState) {
super.onSaveInstanceState(outState);
}