您的位置:首页 > 其它

关于抽象类和接口有什么用和怎么用

2010-12-10 17:30 232 查看
最初接触java的时候,只知道它的里面存在着这些内容,这些知识,很少去考虑有这些内容,那么,在做项目的时候,到底是用来做什么的呢?今天,无意间从图书馆中借到了CSDN上连载的技术文章:《Java 编程那些事儿》,看到的时候有一种亲切感,因为,我学习java就是从CSDN上开始的,而且一直以来,她都伴随我的学习过程,因此,马上借来看看。

说多了……

今天才发现,为什么要有接口和抽象类?原来首相类和接口是用来做这些的:

在项目设计时,整个项目的代码一般分为结构代码和逻辑代码。如何设计结构代码呢?这就需要使用下面将要介绍的抽象类和接口的知识了。这是最直接的问题吧。

下面,我摘抄一些《Java 编程那些事儿》上的一些话帮助理解一下怎么用这些:

一,两者的区别:(一下三条)

抽象类是一个类,所以,类的内部可以包含的构造方法、方法、属性等都可以在抽象类中存在,同时,抽象类在继承的时候是单继承。

接口内部只能包含常量属性和抽象方法,但是一个类可以实现多个接口。

抽象类可以包含抽象方法,也可以包含实体方法,接口内部的方法都必须使抽象方法。

抽象类可以继承类,而接口不能继承类。

二,什么时候使用抽象类?

1.子类不集成其他父类

2.子类中存在完全相同的功能实现方法

3.子类中存在相同的属性

4.设计出的结构需要继承其他类(必须使用抽象类)

三,什么时候使用接口?

1.子类已经继承了其他父类(只能用接口)

2.子类中不存在完全相同的功能实现方法

3.子类中不存在相同的属性

4.设计出的结构不需要继承其他类

四,举一个接口的例子(因为抽象类和类很相似,所以就不举了)(摘自《Java 编程那些事儿》)

//定义接口

public interface USB

{

public static final int V = 5;

public abstract byte[] readDate();

}

//实现接口

public class Computer implements USB

{

int memorySize; //有不同的属性

public byte[] readData()

{

//实现过程

}

}

//实现接口2

public class DigitalCamera implements USB

{

int vendorName; //有不同的属性

public byte[] readData()

{

//实现过程

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: