-
类型转换有几种形式?能解决什么问题?
- 自动类型转换、强制类型转换
- 可以把对象转换成其真正的类型,从而解决了多态下不能调用子类独有方法的问题
-
强制类型转换需要注意什么?
1.存在继承、实现时,就可以进行强制类型转换,编译阶段不会报错。
2.运行时,如果发现对象的真实类型与强转后的类型不同会报错。(ClassCastException)
-
抽象类的特点
1.抽象类中可以不写抽象方法,但有抽象方法的类一定是抽象类
2.类有的成员(成员变量、方法、构造器)抽象类都具备
3.抽象类不能创建对象,仅作为一种特殊的父类,让子类继承并实现
4.一个类继承抽象类,必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类
-
模板设计模式解决了什么问题?
解决方法中存在重复代码的问题
-
模板方法设计模式该怎么写
1.定义一个抽象类
2.在里面定义2个方法,一个是模板方法:放相同的代码里,
一个是抽象方法:具体实现交给子类完成
-
模板方法建议用final关键字修饰
-
传统的接口中,只能定义抽象方法,常量。其他都没有
-
接口不能创建对象
-
一个类实现多个接口,必须重写完全部接口的全部抽象方法,否则这个类也必须是抽象类
-
多态的前提:
1.必须子父类关系或者实现接口关系
2.必须有子类重写父类或接口方法
3.必须有父类引用指向子类对象