亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java抽象類的使用?

java抽象類的使用?

拉風的咖菲貓 2019-03-22 09:15:15
為什么抽象類可以這樣使用public abstract class SingleFragmentActivity extends AppCompatActivity{    protected abstract Fragment createFragment();    @Override    protected void onCreate(Bundle savedInstanceState) {        if (fragment==null){            fragment = createFragment();            fragmentManager.beginTransaction()                    .add(R.id.fragmentContainer,fragment)                    .commit();        }    }}java中的抽象類可以這樣使用嗎,還是單純Android中的使用。我在java1.8做類似的測試發現這樣的使用是不行的。這里的createFragment不就等同于實例化傳給fragmnet,但是抽象類是不可以實例化。這里我是搞不懂的。
查看完整描述

4 回答

?
海綿寶寶撒

TA貢獻1809條經驗 獲得超8個贊

1.抽象類可以繼承
2.有抽象方法必須定義成抽象類
3.抽象類不一定要有抽象方法

所寫代碼符合,


題主所說的實例化問題,是抽象類不可以實例化,必須要子類繼承重寫后,可實例化,也就是不可以new。而不是說在抽象類的內部,不可以對其中的變量進行賦值。


查看完整回答
反對 回復 2019-04-17
?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

你的疑問點在哪里?這樣用有什么問題嗎?這是標準Java寫法啊


查看完整回答
反對 回復 2019-04-17
?
茅侃侃

TA貢獻1842條經驗 獲得超22個贊

這是Java的特性, 不是Android的特性, 抽象類你可以理解成未實現完成的類, 類里面只有部分邏輯, 有部分邏輯未實現, 需要交給子類來實現, 要實例化該類, 需要實現完成了才能實例化


查看完整回答
反對 回復 2019-04-17
  • 4 回答
  • 0 關注
  • 584 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號