首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序:首先建立一个类,包含2个私有成员变量,分别为int和double型,并提供公共方法setInt()和 setDouble()分别给这两个变量赋值和用toString()方法显示对象的私有成员变量的值,要求将这个类定义为Seriali
请完成下列Java程序:首先建立一个类,包含2个私有成员变量,分别为int和double型,并提供公共方法setInt()和 setDouble()分别给这两个变量赋值和用toString()方法显示对象的私有成员变量的值,要求将这个类定义为Seriali
admin
2009-01-15
164
问题
请完成下列Java程序:首先建立一个类,包含2个私有成员变量,分别为int和double型,并提供公共方法setInt()和 setDouble()分别给这两个变量赋值和用toString()方法显示对象的私有成员变量的值,要求将这个类定义为Serializable,再创建这个类的持久对象,将对象写入名为ex3_2.data的文件中并显示对象的2个成员变量,最后从这个文件中读取这个对象并显示对象的2个成员变量。
注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。程序运行结果如下:
ex3_2: i=123 d=123.456
ex3_2: i=123 d=123.456
import java.io.*;
public class ex3_2 implements Serializable {
private int n3_2;
private double d3_2;
ex3_2() {
n3_2 = 25;
d3_2 = 12.23;
}
public void setDouble(double x) {
d3_2 = x;
}
public void setInt(int x) {
n3_2 = x;
}
public String toString() {
return("ex3_2: i=" + n3_2 + "d=" + d3_2);
}
public static void main(String[] arg) {
ex3_2 e1 = new ex3_2 );
ex3_2 e2;
e1.setInt(123);
e1.setDouble(123.456);
System.out.println(e1);
try {
FileOutputStream fos3_2 = new FileOutputStream("ex3_2.data");
ObjectOutputStream oos3_2 = new ObjectOutputStream(fos3_2);
________________;
} catch(IOException ioe) {
System.out.println(ioe);
}
try {
FileInputStream fis3_2 = new FileInputStream("ex3_2.data");
ObjectInputStream ois3_2 = new ObjectInputStream(fis3_2);
________________;
System.out.println(e2);
}catch(10Exception ioe) {
System.out.println(ioe);
}catch(ClassNotFoundException cnfe) {
System.out.println(cnfe);
}
}
}
选项
答案
oos3_2_writeObject(e1) e2 = (ex3_2)ois3_2.readObject()
解析
本题主要考查对象串行化的方法和可串行化类的构造方法。解题关键是熟练掌握串行化的概念和目的,熟悉串行化的方法,如FileOutputStream类的用法等,在Java中这些方法已经成为一种模式,需要熟记。本题中,通过构造可串行化类ex3_2实现了Serializable接口并且含有2个成员变量n3_2和d3_2,这2个成员变量需要包括在数据流中以便保存某个ex3_2对象的整个状态,程序首先创建了一个ex3_2对象,接着将它存到一个磁盘文件中,然后再将它作为一个新对象读回。第1个空,通过ObjectOutputStream的对象oos3_2调用writeObject()方法将ex3_2的对象e1写入磁盘文件ex3_2.data中;第2个空,通过ObjectInputStream的对象ois3_2调用readObject()方法从磁盘文件ex3_2.data中读取对象,由于读出来的是Object类型的对象,所以需要做类型转换。
转载请注明原文地址:https://kaotiyun.com/show/HIID777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
1996年-2000年中国旅游产业概况表
你和小李同时入职,你晋升很快,小李有意见,你会怎么做?(2012年1月15日国考外交部面试真题)
《物权法》第116条规定:“天然孳息,由所有权人取得;既有所有权人又有用益物权人的,由用益物权人取得。当事人另有约定的,按照约定。法定孳息,当事人有约定的,按照约定取得;没有约定或者约定不明确的,按照交易习惯取得。”关于这一规定,下列哪一说法是错误的?(
张某在路上发现有小偷正在对行人李某行窃,便立刻上前阻止,结果被该小偷用刀刺伤。张某共花费医疗费用5万元。针对该情况,下列表述中正确的是()。
陈某与陆某是邻居。陈某家建房挖地基,导致陆某房屋墙面出现裂缝。陆某遂找陈某要求修缮,遭到陈某拒绝。关于本案,下列说法正确的是()。
下面几位历史人物,属于一朝开国国君的是()。
王某潜入某工厂仓库盗窃,将仓库货物(价值2万元)扔到院墙外,准备一会儿翻墙出去再捡,偶尔经过此处的刘某发现该货物无人看管,遂将其拿走,据为己有。10分钟后,王某来到院墙外,发现货物已无踪影。对于王某、刘某行为定性,下列哪一选项是正确的?()
下列语句中,在语序上不同于其他三句的一句是()。
关于“描述性定义”“规定性定义”和“纲领性定义”,下列说法正确的是
下列代码将对象写入的设备是()。ByteArrayOutputStreambout=newByteArrayOut—putStream();ObjeetOutputStreamout=newObjectOutputStream(bout);
随机试题
Windows2000/XP的内存管理器采用_______来记录已在进程地址空间中被保留的虚拟地址(即进程地址空间的状态)。
A.平均动脉压B.收缩压C.循环系统平均充盈压D.舒张压E.脉压心动周期中,主动脉压的最高值()
不符合良性肿瘤对机体的影响的描述是
腮腺肿瘤镜下见肿物由粘液细胞、表皮样细胞和体积较小、核深染的细胞组成,形成大小不等的囊性腔隙,有粘液聚积并有间质炎症反应。最可能的病理诊断是
涉及国际危险货物运输的相关规则主要有()。
期货公司不得为金融期货投资者适当性测试得分低于()分的投资者申请开立交易编码。
上市公司从维护投资者权益和资本市场运行秩序出发,依法将自身财务经营情况等会计信息向证券监管部门报告,并向社会公众投资者公告的行为是()
旱生植物中的少浆植物细胞液浓度较_________,以加强根部对水分的_________。
下面关于网络操作系统的描述中,正确的是()。
CircleoverLondon,BuenosAires,Chicago,Sydneyinanairplaneorviewthecitiesschematically(图表式的)bymeansofanurbanma
最新回复
(
0
)