java接口

本文详细介绍了接口的概念及使用方式,包括接口的定义、语法特点、与抽象类的区别等,并探讨了接口在Java中的具体应用。

接口

接口从微观来看是一种功能

从宏观角度看是一种规则

定义一个接口

语法:

         访问权限修饰符  interface  接口名{

         }

可以定义公共静态常量,接口中属性默认使用public static final 修饰

可以定义公共静态方法,接口中默认方法使用public修饰

可以定义公共抽象方法,接口中抽象方法默认使用public abstract修饰

public interface Fly {
	
	public static final int a1=0;
	int a=0;//默认修饰
	
	void test();
	public  void test1();//默认修饰
	
	abstract void test3();
	public abstract void test4();//默认修饰
	
	
}

不能定义代码块与静态代码块

不能定义构造函数,因为接口不能创建对象

不能定义普通属性

不能定义普通方法

                        jdk1.8以后可以定义default修饰的方法

                        default 返回值类型  方法名(形参列表){

                                        方法体

                                }

                default修饰方法只能在接口中使用,在接口中被default标记的方法为普通方法,会在实现类中继承此方法。

使用接口

类使用接口的方法是实现它

语法:

       访问权限修饰符  class  类名  extends 父类名  implement  接口名1,接口名2,接口名3...{

      }

        一个类只能继承一个直接父类(单继承)

        一个类可以实现多个接口(多实现)

        一个子类对象可以转换为多个父类或接口对象

接口优点:

                1.可以多实现,代码的扩展性得到提升

                2.实现了多个接口的子类对象,可以转换为多个接口对象

  接口使用接口

接口使用接口的方法是继承

         语法:

                访问权限  interface 接口名 extends 父类接口1,父类接口2....{

                }

             一个接口可以继承于多个接口

                子接口可以继承父接口的公共静态常量

                子接口可以继承父接口的default修饰的方法

                子接口可以继承父接口的抽象方法

                子接口不能继承父接口的公共静态方法

                继承的多个接口有相同的default方法时,子接口需要重写此方法

                继承的多个接口有相同属性,此时会产生冲突,需要避免此情况

                继承的多个接口有相同的抽象方法不需要处理,因为抽象方法只会被重写或继承

特殊使用情况       

常量接口   

interface PathUtils{

                                String PATH_CS = "https://www.baidu.com/xxx";

}

只定义常量的接口称为常量接口

接口回调

               java中接口是不可以直接创建实例的,如果把一个接口声明为一个变量,那么执行这个接口中的方法时,接口没有它的实例,这时java虚拟机自然会去找其子类,调用其子类中已经重载的该方法。

接口与抽象类

接口:功能或者规则

        使用:

                接口使用接口,多继承 extends

                类使用接口,多实现 implements

                一个类可以实现多个接口

        可以定义:

                公共静态常量

                公共静态方法

                公共抽象方法

                default修饰的方法

        不能直接创建对象,如果想创建对象,必须创建其子类对象,然后将其转为父类对象(父类接口)会生成class文件

抽象类

        概念:一类事物的描述概念

        使用:

                被其它类继承

                一个类只能继承一个

          可以定义:

                        属性

                        构造函数

                        方法

                        抽象方法

                        代码块

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值