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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 906822773 中级黑马   /  2014-6-26 11:05  /  1143 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
1、匿名内部类就是内部类的简写格式。
2、定义匿名内部类的前提
        内部类必须是继承一个类或者实现接口。
3、匿名内部类的格式: new 父类或者接口(){定义子类内容}。
4、匿名内部类就是一个匿名子类对象,而且这个对象有点胖,可以理解为带内容的对象。
5、匿名内部类中定义的方法最好不超过三个
*/
abstract class AbsDemo  //定义抽象类
{
        abstract void show();
}


class Outer  //外部类
{
        int x=3;

        public void function()
        {
             
                // new Inner().show();  //创建Inner对象 调用方法
                //Inner in=new Inner();
                //in.show();
                //in.abc();

                //AbsDemo a=new Inner();
                //a.show()  
                //a.abc()  //不行的 父类中没定义过
                        //1.不能调用自己的方法 2.匿名内部类 不能强转3.过长 阅读性差 它方法一般不超过三个 匿名方法
                               
                AbsDemo a=new AbsDemo(){                //抽象类不能创建对象
                        void show()
                        {
                        System.out.println("x==="+x);
                        }
                        void abc()
                        {
                        System.out.println("hhhhhhhhhhhhh");
                        }

                };                        //匿名对象对方法只能调用一次
                a.show();


        }



class InnerClassDemo3
{
        public static void main(String[] args)
        {
                System.out.println("Hello World!");
                new Outer().function();
        }
}

上面这段代码 ,我查了几遍没发现问题,为什么编译提示“进行语法解析已达到文件结尾}-〉 ”

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

3 个回复

倒序浏览
class Outer  //外部类
{
   这个的反括号呢????

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

回复 使用道具 举报
这种提示就是少括号了,检查大小中括号就可以了
回复 使用道具 举报
没有大括号,何来子类的内容??
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马