抽象类与接口

抽象类

抽象类是一种特殊的类,用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;

扫描二维码关注公众号,回复: 1033564 查看本文章

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

猜你喜欢

转载自blog.csdn.net/wlyang666/article/details/78668463