当方法的形参为接口或抽象类时

当方法的形参为接口或抽象类时
调用方法不能去传递自身的对象(此时不能创建自身对象)
只可传递子类对象给形参;
此时有两种方法:
1.用有名的子类去继承或实现类或接口,
然后强制重写其中的抽象方法(接口中都是抽象的)
然后在调用方法时创建对象赋给父类,
此时便形成了父类引用指向子类对象;
当形参调用方法或成员变量时,不可调用父类中不存在的.
要想调用必需向下强转.
2.用匿名内部类(new 父类类名/接口名(){
重写方法1,
2,
3
}) //相当于子类对象
直接赋给父类

但是此时不可用形参调用特有方法(父类中不存在的)
不可向下强转 因为不存在类名
匿名内部类写完整后就是子类对象,调用重写或自身方法,直接调用即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值