小议方法参数的可见性

大家说到方法的可见性时,说得都是方法前面的修饰符(public,protected,private),可是方法的参数可见性却一直没有提及。
1:最大可见性的参数类型Object,这个类型可以允许传入任何类型的参数,一般都用于方法内部通过反射来调取参数属性及方法的。
2:次之可见性为Collection类型的,可以传入的对象很多都是一个集合,通过转型或者反射操作,原理和Object基本上差不多。
3:Interface操作。传入一个类型的接口,这样可以通过接口操作参数的各种方法。
4:具体类型。只能传入一种类型或者其子类。有些类似Interface(如果存在子类的话)。
这几种可见性,也要根据情况使用,要尽量在可预见的情况下,使用最小的可见范围。意思就是能使用多小范围就是用多小范围。当然了,自己会预见今后会扩展,就不能使用具体的类,需要使用Interface类型的,或者类似的(即父类)作为参数类型。
范围使用的比较大的话,那么不利于编译检查,也不是强类型语言的有点所在。试想所有的参数都是Object,那么将是多么可怕的事情。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值