黑马程序员技术交流社区

标题: 抽象外部类的成员内部类怎么创建对象? [打印本页]

作者: HARRY_yFd0S    时间: 2016-9-5 21:07
标题: 抽象外部类的成员内部类怎么创建对象?
如果一个抽象外部类里面包含一个成员内部类,那这个内部类如何创建对象?初学java,求大神解答。


作者: 细听风语为梧桐    时间: 2016-9-5 22:14
outer.inner  s =new outer().inner();
作者: HARRY_yFd0S    时间: 2016-9-6 10:31
细听风语为梧桐 发表于 2016-9-5 22:14
outer.inner  s =new outer().inner();

不行吧,Outer是抽象类,不能创建对象
作者: 君行    时间: 2016-9-6 11:15
package com.heima.bean;

abstract class Outer {

        public static void method() {
                System.out.println("Outer执行了");
        }

        static class Inner {
                public void method1() {
                        System.out.println("inner执行了");
                }
        }

}

public class Test extends Outer {
        public static void main(String[] args) {
                Outer.Inner oi = new Outer.Inner();// 创建对象
                Outer.method(); // 抽象类方法 外部类
                oi.method1();// 内部类方法执行

        }
}
作者: HARRY_yFd0S    时间: 2016-9-7 09:22
如果不是静态的呢?
作者: HARRY_yFd0S    时间: 2016-9-7 22:01
君行 发表于 2016-9-6 11:15
package com.heima.bean;

abstract class Outer {

如果不是 静态的内部类呢?
作者: changfa    时间: 2016-9-7 22:22
外部类名.内部类名 = new  (外部类名 ).new (内部类名)
作者: dsbsn05040b    时间: 2016-9-7 22:35
外部调用抽象类必须实现后实例化,才能调内部类。原因是内部类可以调外部类的参数,你外部类是抽象的,怎么可能让你通过内部类来调用一个抽象外部类未实现的方法?
作者: 不灬语    时间: 2016-9-7 22:38
外部类名.内部类名 = new  (外部类名 ).new (内部类名)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2