java中嵌套接口
来源:互联网 发布:菊花插件数据下载 编辑:程序博客网 时间:2024/06/05 23:41
接口知识点
1、接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值
2、接口中的方法默认都是 public abstract 类型的:
3、接口默认也是abstract的的:public abstract interface xx ===public interface xx
2、接口中的方法默认都是 public abstract 类型的:
3、接口默认也是abstract的的:public abstract interface xx ===public interface xx
public interface AreaInterface{ double pai=Math.PI; double area(); interface Neibujiekou{ viod menthod(); }}public abstract interface AreaInterface{ public static final double pai = Math,.PI; public abstract double area();}
嵌套接口
在Java语言中,接口可以嵌套在类或其它接口中。由于Java中interface内是不可以嵌套class的,所以接口的嵌套就共有两种方式:class嵌套interface、interface嵌套interface。
1. class嵌套interface
这时接口可以是public,private和package的。重点在private上,被定义为私有的接口只能在接口所在的类被实现。可以被实现为public的类也可以被实现为private的类。当被实现为public时,只能在被自身所在的类内部使用。只能够实现接口中的方法,在外部不能像正常类那样上传为接口类型。
class A { private interface D { void f(); } private class DImp implements D { public void f() {} } public class DImp2 implements D { public void f() {} } public D getD() { return new DImp2(); } private D dRef; public void receiveD(D d) { dRef = d; dRef.f(); }}public class NestingInterfaces { public static void main(String[] args) { A a = new A(); //The type A.D is not visible //! A.D ad = a.getD(); //Cannot convert from A.D to A.DImp2 //! A.DImp2 di2 = a.getD(); //The type A.D is not visible //! a.getD().f(); A a2 = new A(); a2.receiveD(a.getD()); }}其中语句A.D ad = a.getD()和a.getD().f()的编译错误是因为D是A的私有接口,不能在外部被访问。语句A.DImp2 di2 = a.getD()的错误是因为getD方法的返回类型为D,不能自动向下转型为DImp2类型。
2. interface嵌套interface
由于接口的元素必须是public的,所以被嵌套的接口自动就是public的,而不能定义成private的。在实现这种嵌套时,不必实现被嵌套的接口
classCircle implements AreaInterface{ //只需实现area();不用实现menthod(); double area(){}}class Circle implements AreaInterface,AreaInterface.Neibujiekou{ double area(){} viod menthod(){}}
阅读全文
0 0
- java中嵌套接口
- Java&&接口嵌套
- Java接口嵌套
- java中嵌套浏览器
- java进阶--嵌套类和接口
- 从头认识java-7.7 嵌套接口
- 嵌套接口
- 嵌套接口-接口
- java炒冷饭系列12 接口内部的类 ,从多层嵌套类中访问外部类的成员
- 嵌套类和嵌套接口
- java中HashMap嵌套HashMap嵌套ArrayList案例
- JAVA中的类-普通类,嵌套类,抽象类,接口
- 阅读笔记--java编程思想第四版 --接口嵌套
- Java之嵌套接口详解(附源码)
- Java之嵌套接口和嵌套类了解和简单实例
- java中接口
- java中接口特性
- java中CharSequence接口
- zetcd:脱离ZooKeeper运行ZooKeeper应用程序
- 运算符求最小最大值
- java110 RedPacket 红包系统安装与使用
- 考研数学笔记 21~25
- spring mvc
- java中嵌套接口
- 【C语言】三子棋游戏
- fuzhuo----
- NOI题解(1.8编程基础之多维数组)(待补全)
- HashMap转换成json实例
- Java中的快捷键大全
- 使用字符串分割出来每一位数字
- Veritas Cluster for linux修改主机名
- 考研数学笔记26~30