黑马程序员——Java基础之面向对象(4)——第十篇

---------------------- android培训java培训、期待与您交流! ---------------------- 

抽象类

当多个类中出现相同功能,但功能主体不同

这是可以进行向上抽取,这时,只能抽取功能定义,而不抽取功能主体。

 

抽象:看不懂。

抽象类的特点:

1,  抽象方法一定定义在抽象类中;

2,  抽象方法和抽象类都必须被abstract关键字修饰

3,  抽象类不能用new创建对象,因为调用抽象方法没意义

4,  抽象类中的抽象方法要被使用,必须由子类复写其所有的抽象方法后,建立子类对象调用。

如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。

 

接口

接口:初期理解,可以认为是一个特殊的抽象类。

              当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。

class用于定义类

interface用于定义接口

接口定义时,格式特点:

1,  接口中常见定义:常量,抽象方法。

2,  接口中的成员都有固定修饰符

常量:public  static  final

方法:public   abstract

记住:接口中的成员都是public的

 

接口是不可以创建对象的,因为有抽象方法,需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化,否则子类是一个抽象类。

 

 

 

接口的特点:

1,  接口是对外暴露的规则,

2,  接口是程序的功能扩展

3,  接口可以用来多实现

4,  类与接口之间是实现关系,而且类可以继承一个类的同时实现多接口

5,  接口与接口可以有继承关系。

 

多态

定义:某一类事物的多种存在形态。

可以理解为事物存在的多种体现形态。

1、  多态的体现

父类的引用指向了自己的子类对象。

父类的引用也可以接受自己的子类对象。

2、  多态的前提

必须是类与类之间有关系,要么继承,要么实现。

通常还有一个前提:存在覆盖。

3、  多态的好处

多态的出现大大的提高了程序的扩展性。

4、  多态的弊端

提高了扩展性,但是只能使用父类的引用访问父类中的成员。

5、多态的应用

 

6、多态的出现代码中的特点(多态使用的注意事项)

 

第二个问题:如何特有方调特有用法?   注:类型提升 向下(上)转型

强制将父类的引用,转成子类类型

我们千万不能讲父类对象转成子类类型。

我们能转换的是父类应用指向了自己的子类对象时,该应用可以被提升,也可以被强制转换。多态自始自终都是子类对象在做着变化。

 

instanceof

在多态中:成员函数的特点:

在编译期间:参阅引用型变量所属的类中是否有调用的方法。如果有,编译通过,如果没有,编译失败。

在运行时期,参阅对象所属的类中是否有调用的方法。

简单总结就是:成员函数在多态调用时,编译看左边,运行看右边。

 

在多态中,成员变量的特点:

无论编译和运行,都参考左边。(引用型变量所属的类)

在多态中,静态成员函数的特点:

无论编译和运行,都参考右边。

 

---------------------- android培训java培训、期待与您交流! ----------------------详细请查看: http://edu.csdn.net/heima
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值