java協(xié)變返回類(lèi)型使用示例
Java 5.0添加了對(duì)協(xié)變返回類(lèi)型的支持,即子類(lèi)覆蓋(即重寫(xiě))基類(lèi)方法時(shí),返回的類(lèi)型可以是基類(lèi)方法返回類(lèi)型的子類(lèi)。協(xié)變返回類(lèi)型允許返回更為具體的類(lèi)型。
示例程序如下:
import java.io.ByteArrayInputStream;
import java.io.InputStream;
class Base
{
//子類(lèi)Derive將重寫(xiě)此方法,將返回類(lèi)型設(shè)置為InputStream的子類(lèi)
public InputStream getInput()
{
return System.in;
}
}
public class Derive extends Base
{
@Override
public ByteArrayInputStream getInput()
{
return new ByteArrayInputStream(new byte[1024]);
}
public static void main(String[] args)
{
Derive d=new Derive();
System.out.println(d.getInput().getClass());
}
}
/*程序輸出:
class java.io.ByteArrayInputStream
*/
相關(guān)文章
Springboot Cache @CacheEvict 無(wú)法模糊刪除的解決方案
這篇文章主要介紹了Springboot Cache @CacheEvict 無(wú)法模糊刪除的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12SpringCloud Zuul實(shí)現(xiàn)動(dòng)態(tài)路由
這篇文章主要介紹了SpringCloud Zuul實(shí)現(xiàn)動(dòng)態(tài)路由,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01Java線(xiàn)程同步及實(shí)現(xiàn)方法詳解
這篇文章主要介紹了Java線(xiàn)程同步及實(shí)現(xiàn)方法詳解,當(dāng)我們有多個(gè)線(xiàn)程要同時(shí)訪(fǎng)問(wèn)一個(gè)變量或?qū)ο髸r(shí),如果這些線(xiàn)程中既有讀又有寫(xiě)操作時(shí),就會(huì)導(dǎo)致變量值或?qū)ο蟮臓顟B(tài)出現(xiàn)混亂,從而導(dǎo)致程序異常,需要的朋友可以參考下2023-11-11Java錯(cuò)誤問(wèn)題:找不到或無(wú)法加載主類(lèi)的解決
這篇文章主要介紹了Java錯(cuò)誤問(wèn)題:找不到或無(wú)法加載主類(lèi)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03Spring Security如何使用URL地址進(jìn)行權(quán)限控制
這篇文章主要介紹了Spring Security如何使用URL地址進(jìn)行權(quán)限控制,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12Spring Boot整合web層實(shí)現(xiàn)過(guò)程詳解
這篇文章主要介紹了Spring Boot整合web層實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04