題目描述

Java允許共變回傳,可以利用繼承關係來改變方法的傳回型態。



Java允許子類別在覆寫父類別方法的時候,可以將覆寫後的方法型態改為原方法回傳型態的子類別型態。

依照以下類別結構來實作程式:

原題網址

https://www.hackerrank.com/challenges/java-covariance

輸入格式

不需處理

輸出格式

不需處理

解題概念

先實作Flower類別,接著實作出Jasmine、Lili、Lotus類別來繼承Flower類別,並覆寫whats_Your_Name方法。

再來實作State類別,接著實作出WestBengal、Karnataka、AndhraPradesh類別來繼承State類別,並覆寫your_National_Flower方法。

使用「@Override」記號可以在編譯時期確保有成功覆寫到父類別的方法。

參考答案