面向对象之接口

接口:

1.接口的概念

与之前学习过的抽象类一样,接口(Interface)在ajva中也是一种抽象类型,

接口中的内容是抽象形成的需要实现的功能,接口更像是一种规则和一套标准。

2.接口格式

interface 接口名{代码。。。}

3.接口的特点

1.通过interface关键字来定义

2.通过implemente让子类来实现

3接口中的方法全部都是抽象方法(JAVA8)

4.可以把接口理解成一个特殊的抽象类(但接口不是类!!!)

5.类描述的是一类事物的属性和方法,接口则是包含实现类要实现的方法

6.接口突破了java单继承的局限性

7.接口和类之间可以多实现,接口与接口之间可以多继承。

8.接口是对外暴露的规则,是一套开发规范。

9.接口提高了程序的功能拓展,降低了耦合性。

练习:

/*本类用于创建接口测试*/

/*1.通过interfact关键字来定义接口*/

public interface Inter{

/*接口中可以有普通方法吗?----不可以!!!*/

public void eat(){

}

/*接口中可以有抽象方法吗?----可以,而且接口中的方法全部都是抽象方法!!!*/

public abstract void eat();

public abstract void play();

}

/*本类用作Inter接口的实现类,用于实现Inter接口中定义的方法*/

/*1.通过interface关键字来定义接口

*接口实现类通过implement关键字与接口建立实现关系

*实现方案有两种

* 方案一:抽象子实现类,可以不实现/实现部分接口中的抽象方法

//abstract public class InterImpl implements Inter{}

*方案二:普通子实现类,实现接口中的所有抽象方法*/

public class InterImpl implements Inter{

/*2.接口中可以有普通方法吗?*/

@Override

public void eat(){p("吃火锅")}

@Override 

public void play(){p("玩代码")}

}

/*本类用作接口功能的测试类*/

public class InterTest{

main{

/**1.j接口可以创建对象吗?---不可以!!!*/

//Inter i = new Inter();

//创建多态对象进行测试

Inter i = new InterImpl();

//通过多态对象进行调用

i.eat();

i.play();

/**我们一般创建的都是接口实现类的对象*/

//创建接口实现类对象

InterImpl i2 = new InterImpl();

i2.eat();

i2.play();

}

}

==================================================================

/*本类进一步测试接口的使用*/

public class TestUserInter{

main{

/*如果一个类没有明确指定父类,那么他的父类就是顶级父类Object*/

/**既然接口实现类实现了接口,接口中有没有构造方法

*那接口实现类构造方法中的第一行super()调用的是谁的构造方法

*答:使用的是默认继承的顶级父类Object中的无参构造*/

Inter2Impl i = new Inter2Impl();

}

}

//1.创建接口

interface Inter2{

/**接口中有构造方法吗?---没有!*/

//2.测试接口是否包含构造方法

//public Inter2(){}

}

//3.创建接口的实现类

class Inter2Impl implements Inter2{

//4.手动提供本类的无参构造

public Inter2Impl(){

super();//这个不是接口的

p("我是实现类的无参构造");

}

//object对象(顶级父类)

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值