抽象类与接口
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
相关文章推荐
- 深入理解Java的接口和抽象类
- Head First C# 中文版 图文皆译 第七章 接口和抽象类 page256
- .net学习之继承、里氏替换原则LSP、虚方法、多态、抽象类、Equals方法、接口、装箱拆箱、字符串
- 深入理解Java的接口和抽象类
- JAVA基础(1) -- 抽象类与接口的区别
- Head First C# 中文版 图文皆译 第七章 接口和抽象类 page270
- Java基础<七>--->抽象类、接口、内部类、异常等
- 第九章 抽象类 & 接口
- Head First C# 中文版 图文皆译 第七章 接口和抽象类 page284
- Java中的接口和抽象类
- 接口与抽象类的终极区别
- 抽象类和接口的区别,使用场景
- 抽象类与接口的比较
- 程序小白---关于封装、继承、抽象类和接口的一些理解。
- XListView下拉刷新与上拉加载数据还有该死的一大堆接口抽象类
- 抽象类(abstract class)和接口(interface)有什么异同?
- 接口与抽象类
- 数据底层操作告诉了我们接口,抽象类,继承与多态性的使用
- 抽象类和接口的区别、为什么用抽象类。
- java面向对象浅析系列2——抽象类、接口与多继承