深入理解多态。
2018-06-17 22:44:15来源:未知 阅读 ()
1.继承:如果类A从类B中可以获取到公共信息,那么这种机制称为继承。
2.关于base关键字
base.父类属性
base.父类方法
base()
3.protected 受保护的。在当前类和子类中可以访问。(锁定/限定的对象:类中的变量)
4.子类构造揭秘
5.继承的两个特性,单根性 和 传递性(子类的子类可以获取到父类的信息)
6.多态:
多个对象,,,对于同一个操作,做出的响应不同。这种机制称为多态。
7.构成多态的条件
父类要有虚方法,子类需要用Override关键字重写虚方法。
7.多态高级 Java++
1.多态
里氏替换原则:
子类除了可以具有父类非私有的成员和方法外,还可以
拥有自己特有的成员变量和方法。
2.is和as
is做的是类型判定
as做的是类型转换 ,()强转。本行code不会有错误,如果转换不了。返回null
3.父类的虚方法,在子类中不必强制重写
父类的抽象方法,子类必须强制重写。?
4.抽象方法实现多态
父类得是抽象类,而且定义了抽象方法
子类必须重写抽象方法
5.抽象类和抽象方法注意点:手写()
1.抽象类使用Abstract关键字修饰。
2.抽象方法只能位于抽象类中。
3.抽象类不能实例化
4.抽象方法不能有方法体,甚至连{}都没有
5.抽象类不能是静态类或者密封类
6.子类必须重写抽象类中的所有抽象方法,除非子类本身也是一个抽象类
7.抽象类中可以有普通方法
8.抽象类可以有构造函数
9.重写所有抽象方法的快捷键是Ctrl+.
10.抽象类中抽象方法就是用来约束子类方法形式(签名)的
原理要解:抽象类其实是可以实例化的,但是他的实例化方式不是通过new方式来创建对象,
而是通过父类的引用来指向子类的实例来间接地实现父类的实例化
(因为子类要实例化前,一定会先实例化他的父类。这样创建了继承抽象类的子类的对象,
也就把其父类(抽象类)给实例化了).
结论:抽象类是可以实例化的,不能通过new实例化,可以通过子类构造自动调度父类构造实例化
6.接口
项目中业务必须使用接口。
后来:接口就一个用Interface 修饰的东东。 +++++++++++++++++++++++++开发中的接口
1.接口也是一种数据类型
2.案例:飞机和小鸟都能飞,他们都实现了IFly这个接口。但是他们飞翔的方式不同。这也是多态的一种实现方案
一个类实现一个接口 100个方法 ,其中只有一个方法必须要实现的。
.method public hidebysig newslot abstract virtual instance void Fly() cil managed
{
}
3.接口污染
4.一个类实现N个接口,就是之前我们提到的变相的多继承。
类和接口:类实现接口
接口和接口 :继承
5.父类变量指向子类对象
Typer和Coder
打字员 程序员
老板:定岗:Typer
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Python 数据结构理解分享 2019-07-24
- Python-16-继承、封装、多态 2019-07-24
- Python-11-生成器 2019-07-24
- Django框架深入了解_05 (Django中的缓存、Django解决跨域流 2019-07-24
- python深浅拷贝的理解和区分 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash