Java抽象类与接口-笔记

发布时间:2012-11-23 00:05:04   来源:文档文库   
字号:

抽象类与接口-笔记

关键字:接口

抽象类,接口与类是一个层次的概念,是java中极其重要的概念抽象类是从多个类中抽象出来的公共模板,提供子类均具有的功能。接口是从多个类中抽象出来的规范,体现的是规范和实现分离的原则,同时也有效的解决Java单重继承的缺陷。

*******普通方法与抽象方法的不同*******

普通方法需要有访问修饰符,返回类型,方法名,还要有一个方法体,

抽象方法也有访问修饰符,返回类型,方法名,但是它还多了一个修饰符——abstract,同时没有方法体,也就是说抽象方法没有实现。

普通方法与抽象方法的区别:

1,普通方法必须要有实现体,抽象方法不能有实现体,抽象方法要用abstract修饰符来修饰。

********普通类与抽象类的区别*********

普通类:要有访问修饰符,class关键字和类名。

抽象类:在普通类的基础之上,还多了一个abstract修饰符。

在使用的时候抽象类与普通类也不一样:

普通类:可以通过new关键字实例化。

抽象类:不能使用new关键字来实例化。

**********抽象类********************

抽象类:是一个不能实例化的类,它可以具有抽象方法或者普通方法。

定义抽象类的语法与定义普通类类似,只是多了一个关键字abstract

注意:

抽象类中可以定义抽象方法,也可以拥有普通方法,而普通类当中只能定义普通方法。

********对比抽象类与接口*************

**抽象类用abstract修饰符来定义,而且抽象类中可以有抽象方法,也可以有普通方法。

**接口是使用interface关键字来定义,关键字后面是接口名。

注意::定义接口的时候不再使用class关键字。同时,接口只能拥有抽象方法。

***从定义就可以看出抽象类与接口的区别:

1,抽象类使用abstract声明,接口使用interface声明。

2,抽象类除了抽象方法,还可以有普通方法,而接口中只能有抽象方法。

***两者的相同之处

抽象类与接口都不能被实例化。

*******接口的定义******************

接口就是一个不能实例化,且只能拥有抽象方法的类型,注意,这里说的类型不是类,因为接口不是使用class关键字来定义的,使用interface关键字来定义接口,接口当中只能拥有抽象方法。接口是针对行为(动作)而言的。

小常识:接口中不用使用abstract关键字修饰抽象方法,是因为接口中只能有抽象方法,所以不必专门使用abstract关键字进行修饰了。接口里的抽象方法必须是public修饰符修饰。因为接口里的方法就是共别的类来实现的。

**********使用抽象类与接口***********

抽象类的使用:可以通过继承来实现,也就是使用extends关键字,同时,继承了抽象类的子类,必须实现抽象类的抽象方法。

接口的使用:可以通过关键字implements(实现)来实现,同样的,实现了接口的类,必须要实现接口所有的抽象方法。

******抽象类与接口******

抽象类与接口的作用:

1,抽象类便于复用。

2,接口便于代码维护。

**抽象类的作用是:存放子类中公有的方法。

**为什么使用接口:通过多态方式,使用接口可以很好的隐藏代码细节,从而解决代码维护不易的问题。

**接口的好处是:便于代码的维护。接口实现类的变化,不会对接口的类产生任何影响。

*******面向对象设计的原则***********

面向对象设计的原则1:多用组合,少用继承。

面向对象设计的原则2:针对接口编程,不依赖于具体实现!

面向对象设计的原则3:针对扩展开放,针对改变关闭!这个的意思是,如果项目中的需求发生改变了,应该添加一个新的接口或者类,而不要去修改原有的代码。

***********总结*******************

抽象类:

1,使用abstract修饰符定义

2,可以拥有抽象方法和普通方法

3,抽象方法不能使用private修饰

接口:

1,使用interface关键字定义

2,只能拥有抽象方法

3,抽象方法只能使用public修饰

使用抽象类与接口要注意:

1,抽象类与接口不能实例化

2,继承抽象类或者实现接口的子类,必须

实现其中的抽象方法。

抽象类与接口的作用是:

1,抽象类便于复用

2,接口便于代码维护

面向对象设计的3个原则:

1,多用组合,少用继承

2,针对接口编程

3,针对扩展开放,针对改变关闭

学习抽象类与方法的建议:

1,理解为主

2,时时思考

3,学过一段时间,再回来看看

本文来源:https://www.2haoxitong.net/k/doc/3ebceade195f312b3169a5ad.html

《Java抽象类与接口-笔记.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式