Java公开课-02.抽象类和接口
在讲述抽象类和接口之前,扯点别的:封装,继承,多态,我只做个简单的涉略
一,封装
1.体现:
将变量和方法放到一个类中
私有字段封装成共有属性
2.this:
如果发现成员变量的名称和方法参数的名称相同,如何区分???
答:是否有this关键字做前缀区分,有this的,成员变量,没有this的,方法参数
3.封装价值:
可以保护私有字段,限制非法访问
二,继承
不介绍如何使用。讲点新颖的
1.体现:
extends修饰
2。继承关系下,构造的执行顺序
1)。首先由测试方法跳入子类方法名,不进入方法体
2)。跳入父类的方法名,紧接着进入父类构造方法的方法体
3)。父类构造方法体执行完毕时,说明父类对象已经构建完毕
4)。控制权再次交到子类构造的构造体内执行
5)。子类构造执行完毕,回到测试方法
6)。测试方法该代码执行完毕,创建出对象
三,多态
1.含义:
不同事物执行同一命令产生不同结果
2.依据:
里氏替换
四,抽象类
1.抽象类出现的价值
为了约束子类方法的格式,为了让子类可以灵活重写父类的 方法(抽象类的方法只有方法名,没有方法体)
2.抽象类的写法
由abstract修饰类名
3.抽象类可以有什么?抽象类和抽象方法的注意事项:
1)。抽象类中可以有非抽象成员
2)。抽象方法一定在抽象类中
3)。抽象类和抽象方法用abstract修饰
4)。抽象类不能实例化
5)。抽象类不能是静态类
6)。子类必须重写抽象父类的抽象方法,除非子类也是抽象类
7)。抽象方法不能有方法体,甚至连{}都不能有
五,接口
1.编程的进化史
机器语言
汇编 语言
面向过程的语言
面向对象的语言(可以说面向接口编程)
2.接口interface
3.接口中可以包含什么
抽象方法和静态常量
4.接口与类的区别:
接口不能用于实例化对象。
接口没有构造方法。
接口中所有的方法必须是抽象方法。
接口不能包含成员变量,除了 static 和 final 变量。
5.抽象类和接口的区别
抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。
抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的。
接口中不能含有静态代码块以及静态方法(用 static 修饰的方法),而抽象类是可以有静态代码块和静态方法。
.一个类只能继承一个抽象类,而一个类却可以实现多个接口。
- 接口不是被类继承了,而是要被类实现。
最新文章
- 【读书笔记】《编程珠玑》第一章之位向量&;位图
- MyEclipse怎么设置个性化代码注释模板
- Windows Azure 虚拟机备份
- Linux常见命令汇总
- 【转】cloudera新增用户权限配置
- Scrum Meeting---Three(2015-10-27)
- XHProf的安装和使用(PHP性能测试神器)
- div:给div加滚动栏 div的滚动栏设置
- Qt 学习之路 :文件
- 推荐2个小工具 .NET reflector resharper
- 豆瓣移动端风格的css命名方法与学习
- python提取隐含结构的字符串
- ZBX_NOTSUPPORTED: Item does not allow parameters.
- beta冲刺5
- 【Noip2015】斗地主
- css长度单位学习(em,rem,px,vw,vh)
- wonder vscode plugins
- eclipse 代码模板
- AngularJS的$location基本用法和注意事项
- 防止短时间js 重复执行
热门文章
- 类成员函数后边加const
- Java进阶(十六)使用new Date()和System.currentTimeMillis()获取当前时间戳
- 集群增量会话管理器——DeltaManager
- 跟我一起写Makefile(转)
- nfc近场通信
- 在SD/MMC卡上实现hive (Implement WinCE HIVE&;ROM system on NAND or SD system )
- 在AndroidManifest.xml文件中设置Android程序的启动界面方法
- OpenCV——老照片效果
- JDBC详解(汇总)
- wince6.0 编译报错:";error C2220: warning treated as error - no 'object' file generated";的解决办法