Java——接口

接口

接口
class 类 extends 继承
interface 接口 implements 实现
特殊的抽象类
是功能的集合(一般指抽象方法)

优点:
1.接口可以多实现,类只能单继承
2.提高代码的复用性
3.解耦
4.定义开发规范

定义:
jdk1.7及之前版本:
静态常量: public static final 数据类型 = 值;
修饰符默认,可以选择性的省略
调用: 接口名|实现类类名|实现 类对象.静态常量名
抽象方法: public abstract 返回值类型|void 方法名();
修饰符默认,可以选择性的省略
调用: 实现类对象.方法名
jdk1.8及之前版本:
静态方法: 只能通过接口名调用
默认方法: 通过实现类对象使用

注意:
1.接口不能实例化
2.使用接口,需要通过子类实现,实现使用implements关键字
3.作用于继承很像,实现了接口,就有了接口中定义的规范,但是功能需要自己实现
4.
类与接口: 只能是类实现接口,但是可以多实现
类与类: 只能单继承
接口与接口: 多继承
5.避免 一个类实现的多个接口中存在方法签名相同的方法

public interface InterfaceDemo01 {
		int A=5;	//静态常量
		void test();	//抽象方法
		String test2(int i);
		static void testStatic() {		//静态方法 
		System.out.println("接口中的静态方法");
		}
	
		default void testDefault(){		//默认方法
			System.out.println("接口中的默认方法");
		}
	}

	interface A{
		void aaa();
	}
	interface B{
		void bbb();
	}

 	interface C extends A,B{}
 	
 	class Demo implements C{
 		@Override 
 		public void aaa() { // TODO Auto-generated method stub
 		 }
 		@Override 
 		public void bbb() { // TODO Auto-generated method stub
 		}
 	}

接口实现类

public class Impl02 extends Object implements InterfaceDemo01{
		@Override
		public void test() {
			System.out.println("测试 抽象方法重写1");
		}
		@Override
		public String test2(int i) {
			return "测试 抽象方法重写"+i;
		}
	}

测试类

	public class Test {
		public static void main(String[] args) {
			//InterfaceDemo01.A = 10;
			System.out.println(InterfaceDemo01.A);
			//new InterfaceDemo01();  接口不能实例化
			InterfaceDemo01.testStatic();
			
			//实现类
			Impl02 im=new Impl02();
			System.out.println(im.A);
			System.out.println(Impl02.A);
			im.test();
			im.testDefault();
			System.out.println(im.test2(2));
		}
	}

下一篇,内部类

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值