隐式函数
当我们调用一个对象的方法的时候,但是这个对象并没有这个方法,此时就会触发隐式转换,会把这个对象偷偷的转换为具有这个方法的对象。
比如下面的例子,小鸡可以走路也可以跑,但是它也想像小鸟一样飞,但是它有没有这个功能。我们可以在不对小鸡整改的基础上,引入ChickenImplicit,让小鸡可以隐式的调用Bird的fly方法,让它可以像小鸟一样飞。
当我们需要隐式转换的时候,我们就需要用implicit关键字。
隐式转换的时候,他会先全局的查找是否有匹配的方法或者参数,如果没有再考虑隐式转换。
由于隐式参数是根据类型的,所以同一作用域不能定义多个同一个类型的,并且默认值是优先于默认的。