Java 例外情况:;未提供默认构造函数";异常子类化ParseObject

Java 例外情况:;未提供默认构造函数";异常子类化ParseObject,java,android,oop,inheritance,parse-platform,Java,Android,Oop,Inheritance,Parse Platform,我有两个类newimage和EventImage,它们几乎相同,因此它们继承自Image抽象类。这两个都代表我的解析数据库中的一个类 public abstract class Image extends ParseObject { public Image(){}; public String getImageId(){ return getObjectId(); } public void setImageId(String imageI

我有两个类
newimage
EventImage
,它们几乎相同,因此它们继承自
Image
抽象类。这两个都代表我的解析数据库中的一个类

public abstract class Image extends ParseObject {

    public Image(){};

    public String getImageId(){
        return getObjectId();
    }

    public void setImageId(String imageId){
        setObjectId(imageId);
    }

    public byte[] getImageBytes(){
        try {
            return getParseFile("image").getData();
        } catch (ParseException e) {
            e.printStackTrace();
            return null;
        }
    }

    public void setImageBytes(byte[] bytes){
        put("image", new ParseFile(bytes));
    }

    public Bitmap getBitmap(){
        return Toolbox.ByteArrayToBitmap(getImageBytes());
    }
事件图像类

    @ParseClassName("OSW_event_images")
    public class EventImage extends Image {

        public EventImage() {
            super();

        }

        public Event getEvent(){
            return (Event) getParseObject("event");
        }

        public void setEvent(Event event){
            put("event", event);
        }

    };
新闻图像类

    @ParseClassName("OSW_news_images")
    public class NewsImage extends Image {

        public NewsImage() {
            super();

        }

        public News getNews(){
            return (News) getParseObject("news");
        }

        public void setNews(News event){
            put("news", event);
        }

    };

}
在调用
Parse.initialize()

运行此操作后,我得到:

09-19 12:38:39.794: E/AndroidRuntime(25806): java.lang.RuntimeException: Unable to start activity ComponentInfo{pl.holdapp.osw/pl.holdapp.osw.activities.MainActivity}: java.lang.IllegalArgumentException: No default constructor provided for class pl.holdapp.osw.objects.Image$EventImage
09-19 12:38:39.794: E/AndroidRuntime(25806):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305)

将EventImage类设置为静态。现在,默认构造函数需要对外部类进行隐式引用。

问题在于EventImage不是静态嵌套类。。。没有外部映像类实例,它无法存在
pl.holdapp.osw.objects.Image$EventImage
最终,我把它们都从我的抽象
Image
类中放了出来,但你肯定是对的,如果不实例化Image,这些类就不可能存在。
09-19 12:38:39.794: E/AndroidRuntime(25806): java.lang.RuntimeException: Unable to start activity ComponentInfo{pl.holdapp.osw/pl.holdapp.osw.activities.MainActivity}: java.lang.IllegalArgumentException: No default constructor provided for class pl.holdapp.osw.objects.Image$EventImage
09-19 12:38:39.794: E/AndroidRuntime(25806):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305)