当前位置:网站首页>抽象类和接口 基本知识点复习
抽象类和接口 基本知识点复习
2022-08-02 14:14:00 【零雨z】
抽象类是普通类的超集,只是比普通类多了一些抽象方法而已,现实生活中,抽象类很多(无法映射到具体的对象的类),比如说人类,动物类


上图注意一下,抽象类是没有方法体的 即:{}
1.抽象类无法直接实例化对象,子类继承抽象类,必须覆写抽象类中的所有方法(子类是普通类)
2.利用abstract关键字来定义抽象类与抽象方法,抽象方法所在的类一定是抽象类,子类必须覆写所有抽象方法。
3.抽象类必须有子类,final 和 abstract 不能同时出现
抽象类最大的意义就是强制要求子类覆写所有抽象方法,保证多态的正确运行。如果子类也是抽象类,就不用覆写所有抽象方法.
抽象类的局限:设计与实现比较复杂。
1.子类继承抽象类,仍然满足is a 原则。
2.抽象类仍然是单继承局限,一个类只能继承一个抽象类。
接口
1.接口中只有public权限,接口中只有全局常量和抽象方法,在接口内部abstract,static,final,public都可以沈略掉!!!
2.接口的多实现,接口没有单继承限制,子类可以同时实现多个父接口,子类在实现多个父接口时,使用,分隔。子类必须要实现父接口中的所有抽象方法。
3.接口仍然不能直接实例化对象,必须通过子接口来用上转型。
4.子类若同时继承父亲,实现接口
请先使用extends继承一个父亲,而后使用implemts实现多个接口。子类实现接口没有is a 原则
is 原则只是描述类之间的继承
接口的使用(用法):一般分为两种
第一个是定义某种标准规范,例如定义USB类,符合USB的鼠标键盘都可以使用。
第二个是表示一种能力或者行为,拿动物举例,游泳接口,奔跑接口,飞翔接口,继承表示具有相关的能力。
写给自己:看到这里记得复习特殊类(String Object 包装类)List,Set,Map, 异常,内部类
边栏推荐
猜你喜欢
随机推荐
UnityAPI-Ray-Physics
OpenPose 命令行说明
Unity-编辑器扩展(Editor)
change the available bandwidth of tcp flow dynamically in mininet
图解MESI(缓存一致性协议)
【线程安全】用户级,内核级,组合级线程|线程同步的处理(条件变量)|strtok_r(可冲入函数)
Oauth2.0 custom response values and exception handling
Unity-存档与读档
在mininet中测试arp欺骗
shader入门精要2
转行软件测试,从零收入到月薪过万,人生迎来新转折
"Array" look-up table method (leap year)
Evaluation multipath weswood congestion control on ns3
Oauth2.0 自定义响应值以及异常处理
理解:野指针,空指针,失效指针。
【软件测试】禅道的简要介绍
Optisystem应用:光电检测器灵敏度建模
消息队列的技术选型
为什么Volatile能保证双重检查锁的线程安全
[Inter-process communication]: pipe communication/named/unnamed









