開発環境
- macOS Mojave - Apple (OS)
- Windows 10 Pro (OS)
- IntelliJ IDEA CE(Community Edition) (IDE(統合開発環境))
- Kotlin (プログラミング言語)
Head First Kotlin: A Brain-Friendly Guide (Dawn Griffiths(著)、David Griffiths(著)、O'Reilly Media)のChapter 10(generics - Know Your Ins from Your Outs)、Sharpen your pencil(321)の解答を求めてみる。
コード
open class Food class VeganFood : Food() interface Seller<out T> class FoodSeller : Seller<Food> class VeganFoodSeller : Seller<VeganFood> interface Consumer<in T> class Person : Consumer<Food> class Vegan : Consumer<VeganFood> fun main() { var foodSeller: Seller<Food> foodSeller = FoodSeller() foodSeller = VeganFoodSeller() var veganFoodConsumer: Consumer<VeganFood> veganFoodConsumer = Vegan() veganFoodConsumer = Person() }
入出力結果
Process finished with exit code 0
0 コメント:
コメントを投稿