第九章 接口

<p>java提供了抽象方法机制,这种方法是不完整的;仅有声明而没有方法体。抽象方法声明所采用的语法:abstract void f();</p> <p>如果一个类包含一个或多个抽象方法,该类必须被限定为抽象的。(否则编译器会报错)</p> <p>当我们试图创建抽象类的对象时,编译器会报错。从一个抽象类继承的子类,必须为父类中的所有抽象方法提供方法定义,否则子类也是抽象类,且编译器会强制我们使用abstract关键字来限定这个类。</p> <p><font color="#ff0080">一般情况下,只可以将extends用于单一类,但可以引用多个基类接口。</font></p> <p>接口中的任何域都自动是static和final的,且接口中的成员默认访问权限是public。在接口中定义的域不能是“空final”,但是可以被<font color="#ff0080">非常量表达式</font>初始化。这些域不是接口的一部分,它们的值被存储在接口的静态存储区域内。</p> <p>难点:嵌套接口</p> <p>实现一个private接口只是一种方式,它可以强制该接口中的方法定义不要添加任何类型信息(也就是说,不允许向上转型)</p> <p>嵌套在接口中的另一接口自动是public,而不能声明为private。</p> <p>当实现某个接口时,并不需要实现嵌套在其内部的任何接口。而且,private接口不能在定义它的类之外被实现。</p> <p>通过工厂方法设计模式,我们的代码将完全与接口的实现分离。使用工厂模式可以创建框架。</p> <p>恰当的原则是:优先选择类,而不是接口,以防止接口的滥用。</p>

转载于:https://my.oschina.net/u/932901/blog/101860

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值