接口与实现基础 DAY ONE

接口与实现

DAY ONE

目录

DAY ONE
第一节:接口
第二节:接口实现
DAY TWO
第三节:接口回调
第四节:接口与多态
第五节:接口参数
DAY THREE
第六节:面向接口编程


前言

自学Java总结的一些接口知识点。


第一节、接口

1.1什么是接口?
接口是Java语言中一种重要的数据类型,接口解决了Java无法实现多继承的弊端

1.2为什么要使用接口?
1、接口可以抽象出重要的行为标准,这个行为标准用抽象方法来表示
2、可以把实现接口的类的对象的引用赋值给接口变量,该接口变量可以调用类中重写的接口方法,即体现这个类根据接口里的行为标准给出的具体行为

1.3定义接口
在Java中使用关键字interface来定义一个接口。接口与类的定义相似,分别为接口声明与接口体
如:

interface Animal{
	public void cry();
    public String getAnimalName();
}

①接口声明格式:
interface 接口的名字
如以上代码中的

interface Animal

②接口体
接口体中包含常量声明与抽象方法两个部分。接口体中不能有变量与普通方法,且接口中所有的常量访问权限一定是public,而且是static常量(声明时可以省略public、final与static修饰符),所有的抽象方法访问权限也都是public(可以省略public abstract)
如:

interface Mash{
	public static final int number = 888;//可以写成:int number=888;
	public abstract void add();//可以写成:void add();
    public abstract float sum(float x,float y);
}

第二节、实现接口

1.1类实现接口
一个类需要在类声明后使用关键字implements声明该类实现一个或者多个接口。实现多个接口用逗号分隔开接口名,例如:A类实现B,C两个接口

class A implements B,C

1.2重写接口中的方法
如果一个非抽象类实现了某个接口,那么这个类必须重写这个接口中的所有方法。有一点要注意,接口中的方法一定是public abstract方法,在重写时要去掉修饰符abstract、且访问权限一定要用public来修饰(不然就降低了访问权限,这是不允许的),并且给出方法体。

例子一:

Animal.java
interface Animal{//定义接口
	void cry();
	public String getAnimalName();
}


Dog.java
public class Dog implements Animal{//Dog类实现Animal接口
	@Override
    public void cry() {//重写方法加上public
        System.out.println("旺旺旺,我是小狗!");
        System.out.println("---------------------");
    }

    @Override
    public String getAnimalName() {
        return "小狗";
    }
}

Cat.java
public class Cat implements Animal{
    @Override
    public void cry() {
        System.out.println("喵喵喵,我是小猫!");
    }

    @Override
    public String getAnimalName() {
        return "小猫";
    }
}

Example.java
public class Example {
    public static void main(String[] args) {
	Dog dog=new Dog();
	System.out.println(dog.getAnimalName());
	dog.cry();
	
	Cat cat=new Cat();
	System.out.println(cat.getAnimalName());
	cat.cry();
    }
}

运行结果:
在这里插入图片描述

总结

以上就是今天要讲的内容,本文仅仅简单介绍了接口的声明与实现

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值