set,get方法是干嘛用的
老师,关于ZMS同学的问题,我是这样理解的,你看这样理解对不对:
(1)在main方法中,他将write()和read()方法同时运行了,所以会出现静态属性schoolName看起来被序列化,然后被读取出来了。
(2)如果write()和read()方法分别单独运行,则不会被读取出来。
原因:
(1)当同时调用write()和read()方法时,方法区会保存静态属性schoolName的值,read()时,会直接从方法区调用schoolName的值。
(2)当分别运行时,运行write()将实例对象状态存入目标文件中,但静态变量不被序列化,所以不会被写入目标文件。在运行read()方法时,读取目标文件中内容,将实例对象状态反序列化还原到窗口显示出来,此时方法区已经没有了静态变量的具体赋值,所以读取为空。
(3)序列化只是序列化堆和栈中的数据,而方法区的内容不会被序列化,所以静态属性天生不会被序列化。
老师可以给我分享一下,api帮助文档有道翻译版链接吗
第二十一行代码为什么会报异常?
我没按照视频那样写 直接输出ois.readObject();
package com.bjsxt.Object2; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.util.ArrayList; public class TestClasses { public static void main(String[] args) { //write(); read(); } public static void read() { ObjectInputStream ois = null; try { ois = new ObjectInputStream(new FileInputStream("E:\\object3.txt")); System.out.println(ois.readObject()); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { if(ois!=null) { try { ois.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } public static void write() { //创建班级对象 ArrayList<Student> al = new ArrayList<Student>(); al.add(new Student("marry", 29, "888888")); al.add(new Student("lili", 23, "123456")); al.add(new Student("jack", 20, "654321")); Classes c1 =new Classes("jn101", al); //创建对象输出流 ObjectOutputStream oos = null; try { oos = new ObjectOutputStream(new FileOutputStream("E:\\object3.txt")); oos.writeObject(c1); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { //关闭流 if(oos!=null) { try { oos.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
package cn.tz.String; import java.io.*; public class test04 { public static void main(String[] args) throws IOException { write(); read(); } public static void write() throws IOException { DataOutputStream dos=new DataOutputStream(new BufferedOutputStream(new FileOutputStream("D:\\8.txt"))); dos.writeBoolean(true); dos.writeChar('d'); dos.writeInt(1); dos.writeUTF("jshc"); dos.close(); } public static void read() throws IOException { DataInputStream dis =new DataInputStream(new BufferedInputStream(new FileInputStream("D:\\8.txt"))); dis.readBoolean(); dis.readChar(); dis.readInt(); dis.readUTF(); dis.close(); } }
为什么读取不到数据?
老师您好! 我配置完成了 但是输入网址还是打不开 提示的是这个页面,请教老师一下问题出在哪里,谢谢!
老师您好!
请问:在代码
int read(byte b[],int off,int len);
运行原理是否时字节读取位置是从索引为off的位置开始到len位置的字节结束。还是说off只能设置为-1或者0
老师想问一下为什么这里不是先执行儿子买烟的线程再执行“等待儿子买烟回来”呢?毕竟t.start在前啊
还有就是开头的时候创建了一个字节输出流对象变量 fos,然后我的d盘里并没有这个文件,不要创建一个File对象然后调用createFile的方法创建这个文件嘛
Server.list是哪来的?它为什么存储了对象?
comparator,comparable,compareTo三个区别是什么
老师,貌似用php进行老师这节课的操作比使用java完成相应操作要简单很多,那使用java构建这个服务器有什么优势呢?
public static void main(String[] args) throws IOException { File f = new File("d:/b.txt"); f.createNewFile(); System.out.println("File是否存在:"+f.exists()); System.out.println("File是否是目录:"+f.isDirectory()); System.out.println("File是否是文件:"+f.isFile()); System.out.println("File的最后修改时间:"+new Date(f.lastModified()));//File的最后修改时间:Thu Oct 06 21:05:42 CST 2022 System.out.println("File的最后修改时间:"+f.lastModified());//File的最后修改时间:1665061542807 System.out.println("File的大小:"+f.length()); System.out.println("File的文件名:"+f.getName()); System.out.println("File的目录路径:"+f.getAbsolutePath());
老师,我对那个new Date(f.lastModified())和f.lastModified()这两行代码不太明白,运行的结果我也注释 在后面了,但是我该怎么理解呢,如果让我去写file的最后修改时间,我也只会写成file.lastModified(),不会去new一个,我不太理解new这个是什么意思。 我并没有写new Date的一个日期定义规范,为什么它会输出规范的日期呢? 我可不可以理解为new Date...是按照object里已经定义好的new Date()方法规范呢?
我在使用视频当中的下载下来的源代码提示:
错误: 在类 TestDOM4J 中找不到 main 方法, 请将 main 方法定义为: public static void main(String[] args)否则 JavaFX 应用程序类必须扩展javafx.application.Application
请问怎么处理?
运行报错,请老师指点
java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(Unknown Source)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(Unknown Source)
at java.io.ObjectInputStream.readStreamHeader(Unknown Source)
at java.io.ObjectInputStream.<init>(Unknown Source)
at com.sxt.object.Test.read(Test.java:20)
at com.sxt.object.Test.main(Test.java:13)
object.rar
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637