首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实现可序列化的类的不可序列化异常

实现可序列化的类的不可序列化异常
EN

Stack Overflow用户
提问于 2014-10-13 05:07:02
回答 1查看 511关注 0票数 0

我有以下类:

代码语言:javascript
复制
public class NightPoint implements Serializable
    {
        Date time;
        int y;

        public NightPoint(){};

        public NightPoint(Date time, int y)
        {
            this.time = time;
            this.y = y;
        }
    }

但是,当我尝试执行以下操作时,我得到了NotSerializableException:

代码语言:javascript
复制
try {
            FileOutputStream fos = act.openFileOutput(fileName, Context.MODE_PRIVATE);
            ObjectOutputStream os = new ObjectOutputStream(fos);
            os.writeObject(np);
            os.close();
        } catch (IOException e) {
            Log.d("Output", "Write: IOException -->" + e.toString());
            e.printStackTrace();
        }

我有检查以确保日期是可序列化的,它是可序列化的,所以我无法找出我做错了什么……

代码语言:javascript
复制
10-12 17:10:05.542: W/System.err(7330): java.io.NotSerializableException: com.SPTechnos.sleepsmart.Main
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1364)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1671)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1517)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:979)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:368)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1074)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1404)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1671)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1517)
10-12 17:10:05.542: W/System.err(7330):     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
10-12 17:10:05.542: W/System.err(7330):     at com.SPTechnos.sleepsmart.FileLogger.writeNP(FileLogger.java:34)
10-12 17:10:05.542: W/System.err(7330):     at com.SPTechnos.sleepsmart.Main.onCreate(Main.java:50)
10-12 17:10:05.542: W/System.err(7330):     at android.app.Activity.performCreate(Activity.java:5451)
10-12 17:10:05.542: W/System.err(7330):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
10-12 17:10:05.542: W/System.err(7330):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
10-12 17:10:05.542: W/System.err(7330):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
10-12 17:10:05.542: W/System.err(7330):     at android.app.ActivityThread.access$900(ActivityThread.java:169)
10-12 17:10:05.552: W/System.err(7330):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280)
10-12 17:10:05.552: W/System.err(7330):     at android.os.Handler.dispatchMessage(Handler.java:102)
10-12 17:10:05.552: W/System.err(7330):     at android.os.Looper.loop(Looper.java:146)
10-12 17:10:05.552: W/System.err(7330):     at android.app.ActivityThread.main(ActivityThread.java:5487)
10-12 17:10:05.552: W/System.err(7330):     at java.lang.reflect.Method.invokeNative(Native Method)
10-12 17:10:05.552: W/System.err(7330):     at java.lang.reflect.Method.invoke(Method.java:515)
10-12 17:10:05.552: W/System.err(7330):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
10-12 17:10:05.552: W/System.err(7330):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
10-12 17:10:05.552: W/System.err(7330):     at dalvik.system.NativeStart.main(Native Method)
EN

回答 1

Stack Overflow用户

发布于 2014-10-13 05:27:24

由于某种原因,问题源于我在类“Main”中创建类"NightPoint“的事实;然而,简单地将它移动到它的唯一文件中就解决了问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26329985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档