با سلام و عرض ادب من دوتا سوال داشتم
اول من میخوام بدونم که مثلا از کجا بفهمیم یک متدی که خودمون تعریف میکنیم چه پارامتری میگیره؟مثلا توی بعضی اموزشا Viewمیگرفت،واقعا از کجا باید فهمید ک چ چیزی باید انتخاب کرد؟
دوم اینکه کجاها باید از context استفاده کنیم،از کجا بفهمیم که چ جاهایی باید از این context استفاده کنیم؟
اینکه یه متد چه پارامتری میگیره یا اصلاً به پارامتر نیاز داره یا نه، بستگی به نوع تحلیل شما و طراحی کلاستون داره. اما بعضیجاها که یک متد به ارث برده میشه (از کلاس والد) و قصد داریم اون رو ابطال و رونویسی یا Override کنیم و نسخهی خودمون رو بجاش بنویسیم، باید از همون الگویی که توی کلاس والد بکاررفته پیروی کنیم و امضای متد ما (شامل نام متد، تعداد و نوع پارامترها و استثناهایی که تولید میکنه) با متدی که به کلاسمون ارث رسیده یکسان باشه وگرنه بجای Override کردن داریم Overload میکنیم (دو متد همنام با دو امضای مختلف تعریف میکنیم).
درمورد سؤال دوم شما که مربوط به Context هست، برخی از عناصر مثل Toast و Dialog و Fragment و... نیاز به یک فضای زمینه برای اجرا دارن که میتونه یک اکتیویتی یا فضای کلی برنامه باشه. به این فضای زمینه اصطلاحاً میگیم Context و اینکه بفهمیم از چه فضای زمینهای باید در کجا استفاده کنیم، بستگی به متدی داره که داریم صدا میزنیم که بهمرور با بالارفتن تجربهی کاری، دستتون میاد که کجاها باید از چه زمینهای استفاده کنید. برخی جاها هم ممکنه بشه از چند فضای زمینهی مختلف بجای هم استفاده کنیم که اینهم برحسب تجربه بدست میاد و اگه جایی ابهامی وجود داشت میتونین بپرسین.