A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© gh112233 中级黑马   /  2013-11-16 19:44  /  1352 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在接口中声明一个类
interface A{
public class B{
public void f(){
System.out.print("A");
}
}
}
如何理解这个类。是内部类?

评分

参与人数 2技术分 +1 黑马币 +6 收起 理由
枫儿 + 4 神马都是浮云
To + 1 + 2 这个问题有意思

查看全部评分

4 个回复

倒序浏览
好像这个B类算是个内部类,而且在成员位置上,但是我始终没法new出这个B类,好像无法访问类B了,这样设计好像没什么用了吧
回复 使用道具 举报
接口内部类
回复 使用道具 举报
接口也可以看作是一种特殊的类,在接口中再创建一个类,也相当于是内部类,可以通过类名调用内部类的方法和属性,格式是:【接口名.内部类名.方法】。。。可以看个例子:
  1. interface A
  2. {
  3.         public class B
  4.         {
  5.                 public static void f()  //由于主函数是静态的,静态方法不能调用非静态方法,所以这里要使用静态。
  6.                 {
  7.                         System.out.println("A");
  8.                 }
  9.         }
  10. }

  11. class Demo
  12. {
  13.         public static void main(String[] args)
  14.         {
  15.                 A.B.f();
  16.         }
  17. }
复制代码
输出结果:A

评分

参与人数 1技术分 +1 收起 理由
狼王 + 1

查看全部评分

回复 使用道具 举报
这是一个在接口中实现的类部类、这是一个内部类。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马