java学习中,接口的使用(重要,常用知识点)(java 学习中的小记录)

Posted 王可利(Star·星星)

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java学习中,接口的使用(重要,常用知识点)(java 学习中的小记录)相关的知识,希望对你有一定的参考价值。

java学习中,接口的使用(重要,常用知识点)(java 学习中的小记录)作者:王可利(Star·星星)

 

接口(功能:用来添加拓展功能的

例子:铅笔、带橡皮檫的铅笔。

两个功能:

    1.写字......> 铅笔

    2.擦字......> 橡皮擦

想法:定义一个铅笔类,定义一个橡皮擦类,定义一个带橡皮擦的铅笔类继承 铅笔类和橡皮擦类

但是java是单继承的。于是就有了解决的方法:接口(可以添加拓展功能)

如:一个铅笔类,给它添加一个接口给它一个拓展类(橡皮擦类)

接口的定义模式

用 interface 关键字来表示接口

结构: interface 接口名{};

如何实现完成接口方法:

结构:

    class   类名  implements  接口名1,接口名2,接口名3.....{

  }

接口的作用:

    1.可以拓展功能

    2.可以让程序解耦

       解耦:类 和 接口没有太大的关联,不实现这个接口这个类一样独立存在,如果这个类不实现这个接口,就完全不需要这些接口。

               又好比说:一个 Student 类继承 Person类,Student 没有Person 不能独立存在。

               所以 类 和 接口 就是一个解耦的过程,框架会经常用到。

    3.可以定于约束

        一个项目不止一个人来完成,有很多栏目。如:网易新闻 每天的头条 都会 有 增 删 改 查。每个人的方法是不一样,换一个人维护的话可能方法都变了.所以就需要定于一个大家都一样的方法来约束。规则就是一样的了。

接口使用注意事项:

    1.接口是一个特殊的类,是可以定义属性方法的。

    2.接口里面的属性默认是用final来修饰的。实际是一个常量:public  static final int a = 10;

    3.接口里面的方法都是抽象的:abstract public void  run(){}

    4.接口是没有构造方法的。也不能创建对象。

    5.接口是给类去实现的,非抽象类实现接口时,必须将接口中的方法都实现。

    6.一个抽象类实现接口,可以不实现接口中的方法,但是继承于它的子类必须实现接口中的方法。

    7.接口和接口之间是继承关系,一个接口是可以继承多个接口的。格式和普通类一样 用  interface A  extends  B,C...

 1 package study;
 2 
 3 //定义一个擦字的接口
 4 interface Easer{
 5     //定义方法 擦字
 6     //定义在接口中的方法是不需要实现的,接口中的方法都叫抽象方法
 7     public void clear();//默认是用abstract来修饰的方法
 8 }
 9 interface Pencil{
10     public void write();
11 }
12 
13 class EraserAndPencil implements Pencil,Easer{
14     //如果一个类实现了一个接口,那么这个类里面必须实现这个接口里面的所以方法。
15     public void write(){
16         System.out.println("铅笔可以写字");
17     }
18     //java中是可以实现多个接口的
19     public void clear(){
20         System.out.println("铅笔擦可以擦字");
21     }
22 }
23 
24 public class star {
25     public static void main(String[] args) {
26         EraserAndPencil star = new EraserAndPencil();
27         star.write();
28         star.clear();
29     }
30 }

 

以上是关于java学习中,接口的使用(重要,常用知识点)(java 学习中的小记录)的主要内容,如果未能解决你的问题,请参考以下文章

日常学习记录Java 常用线程并发类的应用实例

日常学习记录Java 常用线程并发类的应用实例

2016.5.15周小结

学习Java最重要的是哪些知识点?

学习Java第七周

知了堂学习笔记java中常用集合的理解