共計(jì) 321 個(gè)字符,預(yù)計(jì)需要花費(fèi) 1 分鐘才能閱讀完成。
Java 匿名內(nèi)部類通常在以下情況下使用:
- 當(dāng)一個(gè)類只需要使用一次,并且這個(gè)類沒有名字,可以使用匿名內(nèi)部類來實(shí)現(xiàn)。這樣可以避免創(chuàng)建一個(gè)單獨(dú)的類文件。
- 當(dāng)一個(gè)接口只有一個(gè)方法需要實(shí)現(xiàn)時(shí),可以使用匿名內(nèi)部類來實(shí)現(xiàn)接口的方法。這種情況下,可以使用函數(shù)式接口和 Lambda 表達(dá)式來替代匿名內(nèi)部類。
- 當(dāng)需要覆蓋父類的方法或者實(shí)現(xiàn)接口的方法時(shí),可以使用匿名內(nèi)部類來實(shí)現(xiàn)。這種情況下,可以直接在代碼中定義匿名內(nèi)部類,并且覆蓋相應(yīng)的方法。
需要注意的是,匿名內(nèi)部類只能繼承一個(gè)類或者實(shí)現(xiàn)一個(gè)接口。如果需要繼承多個(gè)類或者實(shí)現(xiàn)多個(gè)接口,就需要使用普通的內(nèi)部類或者通過其他方式實(shí)現(xiàn)。而且,匿名內(nèi)部類無法有構(gòu)造方法,只能通過初始化塊來初始化。
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!
正文完