java抽象类的作用是:
1,通过继承它实现多态,后期绑定,可以为将来要实现的东西做好接口,实现重用性
2,接口就是更纯粹的抽象类,接口你应该用过吧
3,是这样的
父类:ABC
子类:Abc,Abcd
ABC obj1 = new Abc();
ABC obj2 = new Abc();
这样定义
如果ABC是abstract的有一个show();
子类实现了show()
那么obj1.show()就是第一个子类的show();
obj2.show()就是第2个子类的show();
多态我的理解就是在运行时期表示的多种形态(不准就这意思)
比如说我现在想写一个test 方法这个方法要调用子类的show方法
那么我可以这么定义
void test(ABC temp)
{
temp.show();
}
这样我如果想运行第一个子类的show()
我就这样ABC obj1 = new Abc();
然后test(obj1);
如果想运行第2个
ABC obj2 = new Abc();
test(obj2);
这样那个抽象类就类似一个接口,我可以用这个接口来生产东西
比如说过一阵我又想写一个新的类继承它,那么
class Abcde extends ABC
{
void show()
{...
}
}
ABC obj3 = new Abcde();
test(obj3);
这样我只写了一个类,声明了一个对象而没有改变原来的代码,直接调用我新写的类即可,完成了代码的重用
以后我再想写新的类只需再这么做而不必改动原来的代码,这个接口就好像能预测将来发生的事,将来完成的东西只要满足这个接口都可以调用这个函数而不必重新写
|