你这代码木有什么问题呀?
cust.setAccount(new CheckAccount())这里没错呀。
你这代码木有什么问题呀?
cust.setAccount(new CheckAccount())这里没错呀。
cust.setAccount(new CheckAccount());
相当于:
CheckAccount checkaccount=new CheckAccount();
cust.setAccount(checkaccount);
CheckAccount是继承于Account的,用来当Account也没有问题。
非Java方向,如有错误请谅解。
因为setAccount方法里面要求传入一个Account的类型,那么传入Account及其子类的对象都可以。换言之,如果你的方法参数类型是Object,那么你可以传入任意类型的变量进去,因为Java的对象类型都继承于Object。
因为setAccount方法里面要求传入一个Account的类型,那么传入Account及其子类的对象都可以。换言之,如果你的方法参数类型是Object,那么你可以传入任意类型的变量进去,因为Java的对象类型都继承于Object。
可以传入子类的原因如下,子类继承了父类的方法或者可以重写父类的方法,那么调用特定方法的时候,父类和子类都包含该方法。倘若形参是子类的话,那么不可以传入父类对象进去,因为子类里面可能包含父类中不存在的方法及变量等。
可以传入子类的原因如下,子类继承了父类的方法或者可以重写父类的方法,那么调用特定方法的时候,父类和子类都包含该方法。倘若形参是子类的话,那么不可以传入父类对象进去,因为子类里面可能包含父类中不存在的方法及变量等。
谢谢老板
因为setAccount方法里面要求传入一个Account的类型,那么传入Account及其子类的对象都可以。换言之,如果你的方法参数类型是Object,那么你可以传入任意类型的变量进去,因为Java的对象类型都继承于Object。
java父类不是于胜军吗?
java父类不是于胜军吗?
没毛病
Popular Events
More
各位老铁,由于我电脑进不了论坛!所以只好手机拍照说明问题了!图片上是尚硅谷java多态那部分!主要实现给信用卡存钱!我的问题是cust.setAccount里面怎么能塞入多态呢!即 Account account=new CheckAccount()!不应该是个具体值吗?比如1,2..3这种具体值!如果有人能帮忙补充完整一个代码!更是感激不尽!