package com.zj.example.kotlin.shengshiyuan.helloworld

/**
 * Created by zhengjiong
 * date: 2017/11/12 20:23
 */

//方法重写
class HelloKotlin_Extend2 {


    open class Fruit {

        //需要加open才可以被重写
        open fun name() {
            println("fruit")
        }

        fun expirationDate() {
            println("1 month")
        }
    }

    class Apple : Fruit() {
        override fun name() {
            println("apple")
        }
    }

    /**
     * 如果有一个类又继承Orange,但是不想让其能重写name方法,
     * 可以在name方法前加final, 这样就不能被重写
     */
    open class Orange : Fruit() {
        final override fun name() {
            println("orange")
        }
    }

    /*class OrangeChild : Orange() {
        override fun name() {
            println("orange")
        }
    }*/
}