更新时间:2021年03月18日 08时58分23秒 来源:黑马程序员论坛
抽象 接口 多态 --------------------------------------抽象 抽象方法: 就是加上abstract关键字,然后去掉大括号,直接分号结束 抽象类: 抽象方法所在的类必须是抽象类,在class之前加上abstract即可 如何使用抽象类和抽象方法 1.不能直接创建new抽象类对象 2.必须用一个子类来继承抽象父类 3.子类必须覆盖重写抽象父类当中所有的抽象方法 4.创建子类对象进行使用 注意事项: 1.抽象类不能创建对象,只能创建其非抽象子类的对象 2.抽象类中,可以有构造方法,是供子类创建对象时,初始化父类成员使用的 3.抽象类中,不一定包含抽象方法,只要保证抽象方法所在的类是抽象类,即可 这样没有抽象方法的抽象类,也不能直接创建对象,在一些特殊场景中使用 4.抽象类的子类必须重写父类中所有的抽象方法,或者自己也变成抽象类,并继承给下一个子类 --------------------------------------------接口 接口就是多个类的公共规范 接口是一种引用数据类型 定义接口的格式: public interaface 接口名称{ 接口内容 } 接口中可以包含的内容有 1.常量 2.抽象方法 3.默认方法 4.静态方法 5.私有方法 注意事项: 1.接口当中的抽象方法,修饰符必须是两个固定的关键字,public abstract 2.这两个关键字修饰符,可以选择性省略. 3.方法的三要素可以随意定义 接口使用的步骤 1.接口不能直接使用,必须有一个"实现类"来"实现"接口 格式: public class 实现类名称 implements 接口名称{ // ... } 2.接口的实现类必须覆盖重写(实现) 接口中所有的抽象方法 3.创建实现类的对象,进行使用 注意事项: 如果实现类没有覆盖重写接口中所有的抽象方法,那么这个实现类自己就必须是抽象类 接口的默认方法 格式 public default 返回值类型 方法名称(参数列表) { 方法体 } 备注: 接口的默认方法可以解决接口升级的问题,不强制要求覆盖重写 接口的静态方法 格式: public static 返回值类型 方法名称(参数列表) { 方法体 } 注意:不能通过接口实现类的对象来调用接口当中的静态方法 静态方法的使用: 通过接口名称,直接调用其中的静态方法 格式: 接口名称.静态方法名(参数); 接口的私有方法 普通私有方法:解决多个默认方法之间重复代码问题 private 返回值类型 方法名(参数列表) { 方法体 } 静态私有方法:解决多个静态方法之间重复代码问题 private static 返回值类型 方法名(参数列表) { 方法体 } 接口的常量定义和使用 接口当中也可以定义"成员变量",但是必须使用public static final三个关键字进行修饰 从效果上看,这就是接口的[常量] 格式: public static final 数据类型 常量名称 = 数据值; ------------------------多态 其实就是一句话:父类引用指向子类对象 格式: 父类名称 对象名 = new 子类名称(); 或者 接口名称 对象名 = new 实现类名称(); 访问成员变量的两种方式 注意事项: 成员变量不能被重写 1.直接通过对象名称访问成员变量,等号左边是谁,优先用谁,没有则向上找 2.间接通过成员方法访问:该方法属于谁则用谁,没有则向上找 子类没有覆盖重写,就是父 子类如果覆盖重写,就是子 口诀:编译看左边,运行看左边 访问成员方法的两种方式 在多态的代码当中,new的是谁,就优先用谁,没有则向上找 口诀:编译看左边,运行看右边 接口名称 instanceof 实现类 意思是 |
推荐了解热门学科
java培训 | Python人工智能 | Web前端培训 | PHP培训 |
区块链培训 | 影视制作培训 | C++培训 | 产品经理培训 |
UI设计培训 | 新媒体培训 | 产品经理培训 | Linux运维 |
大数据培训 | 智能机器人软件开发 |
传智播客是一家致力于培养高素质软件开发人才的科技公司,“黑马程序员”是传智播客旗下高端IT教育品牌。自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,针对性地出版了计算机系列教材50多册,制作教学视频数+套,发表各类技术文章数百篇。
传智播客从未停止思考
传智播客副总裁毕向东在2019IT培训行业变革大会提到,“传智播客意识到企业的用人需求已经从初级程序员升级到中高级程序员,具备多领域、多行业项目经验的人才成为企业用人的首选。”
中级程序员和初级程序员的差别在哪里?
项目经验。毕向东表示,“中级程序员和初级程序员最大的差别在于中级程序员比初级程序员多了三四年的工作经验,从而多出了更多的项目经验。“为此,传智播客研究院引进曾在知名IT企业如阿里、IBM就职的高级技术专家,集中研发面向中高级程序员的课程,用以满足企业用人需求,尽快补全IT行业所需的人才缺口。
何为中高级程序员课程?
传智播客进行了定义。中高级程序员课程,是在当前主流的初级程序员课程的基础上,增加多领域多行业的含金量项目,从技术的广度和深度上进行拓展。“我们希望用5年的时间,打造上百个高含金量的项目,覆盖主流的32个行业。”传智播客课程研发总监于洋表示。
黑马程序员热门视频教程【点击播放】
Python入门教程完整版(懂中文就能学会) | 零起点打开Java世界的大门 |
C++| 匠心之作 从0到1入门学编程 | PHP|零基础入门开发者编程核心技术 |
Web前端入门教程_Web前端html+css+JavaScript | 软件测试入门到精通 |