Java 继承与接口知识详解
2015-11-08 23:01
369 查看
继承(Inheritance)
(1).提高了代码的复用性
(2).让类与类之间产生了关系,有了这个关系,才有了多态的特效
注意:千万不要为了获取其他类的功能简化代码而继承,必须是类与类有所属关系才可继承。
(3).java语言中:java只支持单继承,不支持多继承(接口支持)
多继承容易带来安全隐患:当多个父类中定义了相同功能,但功能内容不同时,子类对象不确定运行那个Java保留了这种机制,并用另一种体现形式来表现,叫多实现也就是接口
Java支持多层继承,也就是一个继承体系
如何使用一个继承体系中的功能呢?
要想使用体系,先查阅体系父类的描述,因为父类中定义的是该体系中共性功能。通过了解共性功能,就可以知道该体系的基本功能,那么这个体系基本可以使用了;那么在具体调用时,要创建最子类对象,为什么?一是因为有可能父类不能创建对象(如抽象类),二是创建子类对象可以使用更多功能,包括基本的也包括特有的。
简单一句话:查阅父类功能,创建子类对象使用功能。
接口(interface)
初期理解,可以认为是一个特殊的抽象类;当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。
Class
用于定义类
Interface用于定义接口
Implements实现接口关键词
接口定义时,格式特点:
接口常见的定义:常量,抽象方法
常量:publicstatic final
方法:publicabstract
注意:接口中的成员都是public
接口是不可以创建对象的,因为有抽象方法
需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化,否则子类是一个抽象类
接口可以被类多实现,也是对多继承不支持的转换形式,java支持多实现(因为接口中的方法是没有方法体的,子类愿意怎么实现就怎么实现,假设两个接口中有两个方法一样,那么子类在实现的时候只需要实现他们中的一个就OK,两个interface中的方法都被复写了)
普通类可以同时继承普通类和多个接口,但是extends必须在implements之前
基本体系在类中实现,扩展功能可以在接口中实现
(1).提高了代码的复用性
(2).让类与类之间产生了关系,有了这个关系,才有了多态的特效
注意:千万不要为了获取其他类的功能简化代码而继承,必须是类与类有所属关系才可继承。
(3).java语言中:java只支持单继承,不支持多继承(接口支持)
多继承容易带来安全隐患:当多个父类中定义了相同功能,但功能内容不同时,子类对象不确定运行那个Java保留了这种机制,并用另一种体现形式来表现,叫多实现也就是接口
Java支持多层继承,也就是一个继承体系
如何使用一个继承体系中的功能呢?
要想使用体系,先查阅体系父类的描述,因为父类中定义的是该体系中共性功能。通过了解共性功能,就可以知道该体系的基本功能,那么这个体系基本可以使用了;那么在具体调用时,要创建最子类对象,为什么?一是因为有可能父类不能创建对象(如抽象类),二是创建子类对象可以使用更多功能,包括基本的也包括特有的。
简单一句话:查阅父类功能,创建子类对象使用功能。
接口(interface)
初期理解,可以认为是一个特殊的抽象类;当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。
Class
用于定义类
Interface用于定义接口
Implements实现接口关键词
接口定义时,格式特点:
接口常见的定义:常量,抽象方法
常量:publicstatic final
方法:publicabstract
注意:接口中的成员都是public
接口是不可以创建对象的,因为有抽象方法
需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化,否则子类是一个抽象类
接口可以被类多实现,也是对多继承不支持的转换形式,java支持多实现(因为接口中的方法是没有方法体的,子类愿意怎么实现就怎么实现,假设两个接口中有两个方法一样,那么子类在实现的时候只需要实现他们中的一个就OK,两个interface中的方法都被复写了)
普通类可以同时继承普通类和多个接口,但是extends必须在implements之前
基本体系在类中实现,扩展功能可以在接口中实现
相关文章推荐
- Java复习笔记—常用类库
- spring AOP应用
- spring3.0定时任务
- JAVA 中URL中文参数乱码的处理方法(汇总)
- DB之MyEclipse连接MySQL
- 理解springMVC中的Model和Session属性
- 从头认识java-7.3 接口怎样解耦?
- Java Notes-13(Oberver, Sockets)
- SpringIoC依赖注入的过程(六)
- java使用ScheduledExecutorService定时任务
- java泛型(一)--泛型的简单介绍以及常用情况
- [深入理解Java虚拟机]第十三章 线程安全与锁优化-线程安全
- Java记录 -68- Java实现策略模式
- 简单了解JAVA8的新特性
- 简单了解JAVA8的新特性
- spring框架的一些了解(一)
- I/O & Java in ACM
- Java记录 -67- 深入剖析Collections的sort方法
- git ssh eclipse使用记录
- myeclipse里面jsp页面里面js注释快捷键