接口详解例子代码(附Java1.8的接口新特性)

接口,与抽象类类似但是区别也很大,他们都是标签,用来提醒父类一定要实现的类里创建抽象方法。而接口类可以implements 多个接口,抽象类则只能父类只能继承一个抽象类,与抽象不同的是它不是继承组合关系,所以无法使用super关键字来调用接口里的方法,

接口的要求:

1.接口类必须使用interface关键字创建

2.接口类的父类必须使用implements来附属接口类

3.一个父类可以implements 多个接口(而抽象类的父类只能继承一个抽象类)

4.接口的所有量都是常量,接口类里会将量自动添加static final  关键字。

5.接口里的抽象方法在使用的时候必须需要在父类中重写

6.在Java1.8的新版本中,接口可以用default关键字在接口类中实现方法。而实现的方法不需要在父类中重写

7.接口中常量的调用可以直接用接口类调用也可以实例父类后调用,但是重写的抽象方法或者实现方法不行,必须new父类后实现。


package rom;

import java.awt.Container;

import javax.swing.JFrame;
import javax.swing.WindowConstants;

public class Xamle_1 implements demo {
	public void demo1() {
		System.out.println("重写接口里的demo1");
		
	}
	public void demo1_2() {
		System.out.println("重写接口里的demo1_2");
		
	}
	
	 public static void main(String[] args) { 
		 Xamle_1 xamle_1 = new Xamle_1();
		 xamle_1.demo1(); //调用重写后的demo1方法
		 xamle_1.demo2(); //用new的实例类,在接口中直接调用关键字default修饰的已经实现的方法,此方法不需要重写
		 System.out.println("调用接口中的常量:"+demo.a);//只有常量可以不用new 一个实例类,直接用接口类调用
		 System.out.println("调用接口中的常量:"+xamle_1.b); //用 new的实例类调用常量b
		 
		 
			
        }				
	}
interface demo {
	public void demo1() ; //在接口中可以不写abstract关键字,因为接口中的抽象方法已经默认写了abstract
	abstract public void demo1_2(); //与上面对比
	default void demo2() {
		System.out.println("default 关键字在接口中实现方法");
		
	}
	public static final int a = 100; 
	public static int b = 100; //虽然没有写但是接口的常量会默认写上final,所以接口中的常量是无法修改的
	
	
	
}



	


posted on 2017-06-30 10:49  观心静 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/guanxinjing/p/9708685.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值