您的位置:首页 > 编程语言 > Java开发

抽象类与接口

2017-11-29 18:24 204 查看

抽象类

抽象类是一种特殊的类,用abstract关键词修饰

特点:

1.作为父类,抽取子类代码,提高复用

2.不能实例化,规定子类 必须 重写的方法(抽象方法,没有方法体,具体类必须实现)

`package jicheng;

public abstract class TestAbstract {

public String type;
//具体类可以不实现
public void shixian(){

}
//抽象方法,具体类必须实现
public abstract void shixian2();


}`

接口

接口用interface 修饰

所有方法默认public abstract类型

接口中的变量都是静态常量(public static final)

特点:

接口不可以被实例化,实现类必须实现接口的所有方法,实现类可以实现多个接口,多个接口使用逗号隔开,(Java中的多继承)

说到这里可能还是迷糊的,神马?这到底是神马?

1.接口是一种约定,一种能力。。

2. 接口成员

方法 是public abstract修饰的,方法签名要有返回值类型

成员变量 public static final

因为修饰符固定,可以省略,从接口继承过来的方法必须是public类型的

3. 接口可以被多实现

4. 类与接口是实现关系

接口与接口是继承关系

5. 抽象类和接口的区别:

相同点:

代表系统的抽象层

都不能被实例化

都能包含抽象方法

不同点:

在抽象类中可以为部分方法提供默认实现,而接口只有抽象方法

一个类只能有一个直接父类,但可以实现多个接口

抽象类

成员变量

构造方法

成员方法

接口中

public static final 的 属性

public abstract的方法

以上是接口的基本概念,下面是代码实现。

`package jicheng;

public interface testInterface {

String  type="";
public void sayHello();


}

package Test;

import jicheng.testInterface;

public class testInterfaxeImpl implements testInterface {

@Override
public void sayHello() {
System.out.println("hello ,我是接口的实现类");

}


}

`

以上是接口的简单实现,感觉没有啥意义。。。

我网上找了几个写的好的博客链接,有兴趣可以看看,唉,看看人家写的,再看看自己的,小菜鸟一只,任重而道远。。。

http://jingyan.baidu.com/article/8065f87f90ec4c233124983e.html

http://blog.csdn.net/chenssy/article/details/12858267

http://blog.csdn.net/findmyself_for_world/article/details/42525001
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息