-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathSolution.java
More file actions
115 lines (83 loc) · 3.45 KB
/
Solution.java
File metadata and controls
115 lines (83 loc) · 3.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
//Pilate therefore said to him, "Aren't you speaking to me? Don't you know that I have power to release you, and have power to crucify you?" (John 19:10)
package com.javarush.task.task20.task2019;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
/*
Исправить ошибку. Сериализация
*/
public class Solution implements Serializable {
public static void main(String args[]) throws Exception {
FileOutputStream fileOutput = new FileOutputStream("e:\\5.txt");
ObjectOutputStream outputStream = new ObjectOutputStream(fileOutput);
Solution solution = new Solution();
outputStream.writeObject(solution);
fileOutput.close();
outputStream.close();
//loading
FileInputStream fiStream = new FileInputStream("e:\\5.txt");
ObjectInputStream objectStream = new ObjectInputStream(fiStream);
Solution loadedObject = (Solution) objectStream.readObject();
fiStream.close();
objectStream.close();
//Attention!!
System.out.println(loadedObject.size());
}
private Map<String, String> m = new HashMap<>();
public Map<String, String> getMap() {
return m;
}
public Solution() { //Было: public void Solution() т.е. был объявлен метод, а не коструктор, и который никто и не вызывал..
m.put("Mickey", "Mouse");
m.put("Mickey", "Mantle");
}
public int size() {
return m.size();
}
}
/*
Исправить ошибку. Сериализация
После десериализации объекта класса Solution обнаружили, что данных в словаре [m] нет :(
Исправить 1 ошибку.
Требования:
1. В классе Solution не должно быть метода void Solution без параметров.
2. В классе Solution должен существовать конструктор без параметров.
3. В классе Solution должен существовать метод size без параметров.
4. В классе Solution метод size должен возвращать значение типа int.
package com.javarush.task.task20.task2019;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
*
Исправить ошибку. Сериализация
*
public class Solution implements Serializable {
public static void main(String args[]) throws Exception {
FileOutputStream fileOutput = new FileOutputStream("your.file.name");
ObjectOutputStream outputStream = new ObjectOutputStream(fileOutput);
Solution solution = new Solution();
outputStream.writeObject(solution);
fileOutput.close();
outputStream.close();
//loading
FileInputStream fiStream = new FileInputStream("your.file.name");
ObjectInputStream objectStream = new ObjectInputStream(fiStream);
Solution loadedObject = (Solution) objectStream.readObject();
fiStream.close();
objectStream.close();
//Attention!!
System.out.println(loadedObject.size());
}
private Map<String, String> m = new HashMap<>();
public Map<String, String> getMap() {
return m;
}
public void Solution() {
m.put("Mickey", "Mouse");
m.put("Mickey", "Mantle");
}
public int size() {
return m.size();
}
}
*/