造型部分:
1、什么时候用向上转型?
当某个方法有可能操作某类的所有子类型的共有方法或成员时,应考虑用向上转型。
2、如何使调用程序在无法实例化子类的情况下,使用向上转型?
将该子类定义在一个public类A内部,并声明为private,使用A的方法返回该子类的对象供调用程序使用。(调用程序无法访问private成员)
设计部分:
1、什么情况下使用内部类?
(1)、隐藏某类的成员或者方法定义时,将该类设为private并藏于某public类
(2)、利用内部类,实现访问外部类的private成员(给外部类的成员设置访问权限,即只写权限)
(3)、利用多个内部类,实现多继承
2、匿名类的作用?
定义并一个不常用的子类对象,用于重写父类方法或者实现接口。即针对某类的方法进行修改,且此修改不常用。