首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成程序,首先由一个类simple实现Serializable接口,并有三个成员变量,分别为int型、double型和String型,可以用toString的方法显示这三个成员变量。在main方法中创建这个simple的持久对象,根据用户在命令行输入的三
请完成程序,首先由一个类simple实现Serializable接口,并有三个成员变量,分别为int型、double型和String型,可以用toString的方法显示这三个成员变量。在main方法中创建这个simple的持久对象,根据用户在命令行输入的三
admin
2009-12-22
85
问题
请完成程序,首先由一个类simple实现Serializable接口,并有三个成员变量,分别为int型、double型和String型,可以用toString的方法显示这三个成员变量。在main方法中创建这个simple的持久对象,根据用户在命令行输入的三个参数来设定其中成员变量的值。然后,将这个对象写入名为TheSerial.data的文件中,并显示成员变量。最后从文件TheSerial.data中读出三个成员变量并显示出来。
注意:请勿修改main()主方法和其他已有语句内容,仅在横线处填入适当语句。
import java.io.*;
class TheSerial implements Serializable
{
private int intvalue;
private double doublevalue;
private String string;
The Serial ()
{
intvalue=123;
doublevalue=12.34;
string="Serialize Test";
}
public void setDouble(double d)
{
doublevalue=d;
}
public void setInt(int i)
{
intvalue=i;
}
public void setString(String s)
{
string=s;
}
public String to String()
{
return("int="+intvalue+" double="+doublevalue+" string="+string);
}
}
public class simple
{
public static void main(String[] args)
{
The Serial e1=new TheSerial();
TheSerial e2;
try
{
e1.setInt(Integer.parseInt(args[0]));
e1.setDouble(Double.parseDouble(args[1]));
e1.setString(args[2]);
}
catch(Exception e)
{
e1.setString(e.getMessage());
}
System.out.println(e1);
try
{
FileOutputStream oS=new FileOutputStream("TheSerial.data");
ObjectOutputStream oOS=new ObjectOutputStream(oS);
______;
}
catch(IOException ioException)
{
System.out.println (ioException.getMessage ());
}
try
{
FileInputStream iS=new FileInputStream("TheSerial.data");
ObjectInputStream oIS=new ObjectInputStream(iS);
______;
System.out.println(e2);
}
catch(IOException ioException)
{
System.out.println(ioException.getMessage());
}
catch(ClassNotFoundException cnfException)
{
System.out.println(cnfException.getMessage());
}
}
}
选项
答案
oOs.writeObject(e1) e2=(TheSerial)oIS.readObject()
解析
本题考查知识点:串行化要领和目的、串行化方法、基于文本的应用。解题思路:本题主要考查串行化相关的方法和实现。解题中首先要掌握串行化的基本过程和反串行化的过程。串行化过程首先要创建一个FileOutputStream,通过该类的实例对文件进行访问,然后创建一个ObjectOutputStream对象,通过writeObject()方法来实现对象的序列化。第1个空就是使用writeObject()实现序列化。反序列化过程中用FileInputStream对象建立读取文件的连接,并使用该对象创建一个ObjectInputSream实例的readObject()方法就可以实现对象的反序列化。第2个空就是使用readObject()实现反序列化。
转载请注明原文地址:https://jikaoti.com/ti/CQb0FFFM
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
为“评分”表的“分数”字段添加有效性规则:“分数必须大于等于0并且小于等于10”,正确的SQL语句是
有以下程序:INPUTTOAS=0IFA=10S=1ENDIFS=2?S假定从键盘输入的A值是数值型,则程序的运行结果是
下列程序段执行以后,内存变量y的值是x=34567y==0DOWHILEx>0y=x%10+y*10x=int(x/10)ENDD
在VisualFoxPro中,下面描述正确的是
在VisualFoxPro中,下面描述正确的是
在查询设计器的工具栏中有、而在视图设计器中没有的工具按钮是
假定一个表单里有一个文本框Text1和一个命令按钮组CommandGroup1。命令按钮组是一个容器对象,其中包含Command1和Command2两个命令按钮。如果要在Command1命令按钮的某个方法中访问文本框的Value属性值,不正确的表达式是
页框控件也称作选项卡控件,在一个页框中可以有多个页面,页面个数的属性是
假设新建了一个程序文件myProc.prg(不存在同名的.exe、.app和.fxp文件),然后在命令窗口输入命令DOmyProc,执行该程序并获得正常的结果。现在用命令ERASEmyProc.prg删除该程序文件,然后再次执行命令DOmyPro
下列不属于软件工程的3个要素的是______。
随机试题
(2013年)下列业务活动中,属于商业银行中间业务的有()。
北京大兴国际机场正式投入运营是2019年9月()。
最常见的良性软组织肿瘤是
ICU的收治对象不包括
关于牛流行热,下述描述正确的是()。
证属()治宜()
某市地处冲积平原上,当前地下水位埋深在地面下4m,由于开采地下水,地下水位逐年下降,年下降率为1m,主要地层有关参数的平均值如下表所示。第3层以下为不透水的岩层。按《岩土工程勘察规范》(GB50021—2001)所规定的计算方法,不考虑第3层以下地层可能
山岭隧道浅埋段施工中,严禁采用的施工方法是()
甲、乙签订一份水泥买卖合同,甲为出卖人,乙为买受人。合同中约定乙将货款20万元支付给甲,5天内甲将水泥运至乙的工地。当乙准备按合同约定支付货款时,突然得到消息,并有确切证据证明甲存在()情形之一的,乙即可中止履行合同。
1915年9月,陈独秀在《敬告青年》一文中提出了新文化运动的口号是民主与科学,这里的民主是指()
最新回复
(
0
)