1 做一个含有复杂数据的程序,设计好数据,并放入一个类中,这个类实例化为一个对象。把这个对象用序列化读写盘。
2 不用序列化,直接使用Java 的文件类去存取这些数据,也给一个实现
3 作好1与2 的对比。
这是我老师让我做的毕业设计的要求中的前三个。他给了一段代码如下
我的背景:没有学习过java,只是看了一下一些语法。前段时间由于找工作去了,没把毕业设计的事放在心上,刚回学校,老师就让我这几天把论文的初稿给他,我这样的情况哪里能弄初稿给他啊,上面的三个问题我都还没有解决,我不知道怎么弄初稿给他,哪位大侠帮我看看我老师的这段代码然后帮我看一下第2步怎么实现,我真的是感激不尽。先谢谢了。。
import java.io.*;class MyUser implements java.io.Serializable
{
  public String a;
  public String[] bVec;
  public MyUser()
      {
        a=new String();
        bVec=new String[3];
      }}
public class DataTest implements java.io.Serializable{
  public int aa;
  public int bb;
  public float cc;
  public int[]aavec;
  public MyUser[] myuser;  public DataTest() {
   aa=0;
   bb=0;
   cc=0;
   aavec=new int[100];
   myuser=new MyUser[10];
   for(int i=0;i<myuser.length;i++)myuser[i]=new MyUser();  }  public static void main(String[] args) {
    DataTest datatest = new DataTest();
    datatest.aa=10;
    datatest.bb=100;
    for (int i=0;i<datatest.aavec.length;i++)
      datatest.aavec[i]=i;
    for (int i=0;i<datatest.myuser.length;i++)
      {
        datatest.myuser[i].a=(Integer.toString(i));
        for(int j=0;j<datatest.myuser[i].bVec.length;j++)
          datatest.myuser[i].bVec[j]=(Integer.toString(i)+":"+
                                      Integer.toString(j));
      }
    try {      ObjectOutputStream out =
          new ObjectOutputStream(
              new FileOutputStream("c:\\userInfo.ser"));
      out.writeObject(datatest);
      out.flush();
      out.close();
   }
   catch (java.io.IOException IOE) {
     System.out.println("IOException");
   }
   try
   {
     FileInputStream file = new FileInputStream("c:\\userInfo.ser");
     ObjectInputStream input = new ObjectInputStream(file);
     DataTest user = (DataTest) input.readObject();
     for(int j=0;j<user.myuser[5].bVec.length;j++)
     {
        System.out.println(user.myuser[5].bVec[j]);
     }
     String[] mystring;
     int result=0;
     for(int j=0;j<user.myuser[6].bVec.length;j++)
     {       mystring=user.myuser[6].bVec[j].split(":");
       for(int k=0;k<mystring.length;k++)
         result+=Integer.parseInt(mystring[k]);
       System.out.println(result);
     }
     input.close();
   }
   catch (java.io.IOException IOE) {
     System.out.println("IOException");
   }
   catch (ClassNotFoundException cnfe) {
     System.out.println("ClassNotFoundException");
   }
  }
}

解决方案 »

  1.   

    我现在遇到一个问题,我编译的时候老是说找不到main类。怎么回事?
      

  2.   

    public class da
    {
      public static void main(String arges[])
      {
        System.out.print("fdsjlfjelwr");
      }
    }
    出现这个对话框:could not find the main class,programm will exit
      

  3.   

    在message里还出现这样的话:
    java.lang.NoClassDefFoundError: da
    Exception in thread "main"
      

  4.   

    一样不行
    出现:exception in thread"main"java.lang.noclassdeffounderror:da
      

  5.   

    你对java了解太少了
    老师干吗让你做这个?
      

  6.   

    其实都是很基础的东西
    最好找一个java入门的书,看看最简单的代码如何遍
    然后再看看文件操作和对象序列化就够了最重要的是和书上的例子一起练习
    慢慢就懂了
      

  7.   

    上面的是全部的原代码?
    很奇怪我这里运行没问题看看你环境变量path里有没有 .
      

  8.   

    我是让你看看path里有没有 . (句点)
      

  9.   

    .;%JAVA_HOME%\bin;%ANT_HOME%\bin;%MYSQL_HOME%\bin;这是我的,你看看最前面的句点
      

  10.   

    我的PATH值是C:\Borland\JBuilder2005\jdk1.4\bin
      

  11.   

    别用jBuilder
    那个东西你也得学就用sun的jdk就行乐
      

  12.   

    那东西好用吗?JDK是什么啊?我怎么样可以用了?
      

  13.   

    你的程序没问题的,能跑通
    看看你的jdk或者是环境变量设置的对吗?????
      

  14.   

    *************************给楼主最中肯的建议:**************************
    对呀,看来你对java了解甚少,估计你找工作也不打算从这方面找,做这个对你也没什么意义,干脆抄算啦!或者干脆再csdn上找个人把你的毕业设计做了,你适当给人点补偿。要现在开始学,打死不可能在两天之内搞定。真的!!!
      

  15.   

    *************************给楼主最中肯的建议:**************************
    对呀,看来你对java了解甚少,估计你找工作也不打算从这方面找,做这个对你也没什么意义,干脆抄算啦!或者干脆再csdn上找个人把你的毕业设计做了,你适当给人点补偿。要现在开始学,打死不可能在两天之内搞定。真的!!!//------------------------------------------------------------------------
    兄弟说得太对了,现在说找工作难,大概就这个原因了,我的心儿也有底了,祖国的花朵又盛开了!
      

  16.   

    我的工作找到,是当老师的,计算机老师,教初中生pascal编程,我选的这个设计课题是当初跟自己赌气,非选一个从来没有接触过的东西,现在烦了。老师有事不在,又可以拖两天,可是越拖心越毛,抄都不知道去哪里抄
      

  17.   

    环境变量要设置到系统环境变量即你lang包下的目录为好
      

  18.   

    javac DataTest .java
    java DataTest 你编译一下这个 问题就好了