بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

سوال در مورد Protected و public

مدیریت گفتگو
mh58447 12 سال پیش
آخرین تغییر: 12 سال پیش

توی آموزش ها گفتین وقتی کلاسی Protected باشه در کلاس پدر میتوانیم اونو در کلاس پسر override کنیم

اما توی کلاس mail ما کلمه override رو داریم اما کلاسی که به ارث برده شده public است و نه protected.

چجوری میشه یک کلاس public بتونه override بشه؟

public class MyclassesActivity extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

    }

}

نظرات

sadeghbarout 12 سال پیش
لطفا کدها رو در بخش درج کد درج کنید.( از بخش راهنما لینک کمک بگیرید)
مجتبی یگانه 12 سال پیش
خلاصه -> public رو میشه در سایر پکیج هایی که تو برنامه هست استفاده کرد ، Protected رو نمیشه !

پاسخ‌ها 2

sadeghbarout 12 سال پیش

ببین هر متدی که از کلاس پدرش بخواد دوباره تعریف بشه، بهش میگن override

حالا اگه بخوای از کلاس پسر به متدی در کلاس پدر دسترسی پیدا کنی باید اول بتونی ببینیش. برای دیدنش یا باید public باشه یا protected

اما فرق این دوتا چیه؟

متدی که publicه از هر کلاسی (پسر یا غیر پسر) قابل دسترسی و استفاده است

اما متدی که protected ه فقط از کلاسی که از اون کلاس extends شده( پسر) قابل دسترسیه.

(متد private هم که اصلا کسی دسترسی نداره و فقط همون پدره میتونه ازش استفاده کنه)

 

ویرایش:

یه چیزم الان از دوستان یاد گرفتم : متد protected از سایر کلاسهای پکیج همون کلاس هم قابل دسترسی هستن.

نظرات

Spirit 12 سال پیش

نظرات

sadeghbarout 12 سال پیش
منظور از پکیج، چیه دقیقا؟
اولین خط هر کلاسی پکیجش رو نوشته - به نوعی دسته بندی برای کلاسها به حساب میاد
sadeghbarout 12 سال پیش
یعنی protected توی پکیج هم دیده میشه؟!! خوب شد گفتید ها! فکر میکردم فقط برای کلاس مشتق شده قابل دیدنه!

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .