A. Objects from classes that use aggregation cannot be serialized.
B. Art object serialized on one JVM can be successfully deserialized on a different JVM.
C. The values in fields with the volatile modifier will NOT survive serialization anddeserialization.
D. The values in fields with the transient modifier will NOT survive serialization anddeserialization.
E. It is legal to serialize an object of a type that has a supertype that does NOT implement java.io.Serializable.
您可能感兴趣的试卷
你可能感兴趣的试题
1. import java.io.*;
2. public class Foo implements Serializable {
3. public int x, y;
4. public Foo( int x, int y) { this.x = x; this.y = y; }
5.
6. private void writeObject( ObjectOutputStream s)
7. throws IOException {
8. s.writeInt(x); s.writeInt(y)
9. }
10.
11. private void readObject( ObjectInputStream s)
12. throws IOException, ClassNotFoundException {
13.
14. // insert code here
15.
16. }
17. }
Which code, inserted at line 14, will allow this class to correctly serialize and deserialize?()
A. s.defaultReadObject();
B. this = s.defaultReadObject();
C. y = s.readInt(); x = s.readInt();
D. x = s.readInt(); y = s.readInt();
import java.io.*;
public class Forest implements Serializable {
private Tree tree = new Tree();
public static void main(String [] args) {
Forest f= new Forest();
try {
FileOutputStream fs = new FileOutputStream(”Forest.ser”);
ObjectOutputStream os = new ObjectOutputStream(fs);
os.writeObject(f); os.close();
} catch (Exception ex) { ex.printStackTrace(); }
}
}
class Tree { }
What is the result?()
A. Compilation fails.
B. An exception is thrown at runtime.
C. An instance of Forest is serialized.
D. A instance of Forest and an instance of Tree are both serialized.
A. closing the stream
B. flushing the stream
C. writing to the stream
D. marking a location in the stream
E. writing a line separator to the stream
10. class MakeFile {
11. public static void main(String[] args) {
12. try {
13. File directory = new File(”d”);
14. File file = new File(directory,”f”);
15. if(!file.exists()) {
16. file.createNewFile();
17. }
18. } catch (IOException e) {
19. e.printStackTrace
20. }
21. }
22. }
The current directory does NOT contain a directory named “d.” Which three are true?()
A. Line 16 is never executed.
B. An exception is thrown at runtime.
C. Line 13 creates a File object named “d”.
D. Line 14 creates a File object named “f‟.
E. Line 13 creates a directory named “d” in the file system.
F. Line 16 creates a directory named “d” and a file “f” within it in the file system.
G. Line 14 creates a file named "f " inside of the directory named “d” in the file system.
public class Wow {
public static void go(short n) {System.out.println(”short”); }
public static void go(Short n) {System.out.println(”SHORT”);}
public static void go(Long n) {System.out.println(” LONG”); }
public static void main(String [] args) {
Short y= 6;
int z=7;
go(y);
go(z);
}
}
What is the result?()
A. short LONG
B. SHORT LONG
C. Compilation fails.
D. An exception is thrown at runtime.
public class Yikes {
public static void go(Long n) {System.out.println(”Long “);}
public static void go(Short n) {System.out.println(”Short “);}
public static void go(int n) {System.out.println(”int “);}
public static void main(String [] args) {
short y= 6;
long z= 7;
go(y);
go(z);
}
}
What is the result?()
A. int Long
B. Short Long
C. Compilation fails.
D. An exception is thrown at runtime.
public class TestString3 {
public static void main(String[] args) {
// insert code here
System.out.println(s);
}
}
Which two code fragments, inserted independently at line 3, generate the output 4247?()
A. String s = “123456789”; s = (s-”123”).replace(1,3,”24”) - “89”;
B. StringBuffer s = new StringBuffer(”123456789”); s.delete(0,3).replace( 1,3, “24”).delete(4,6);
C. StringBuffer s = new StringBuffer(”123456789”); s.substring(3,6).delete( 1 ,3).insert(1, “24”);
D. StringBuilder s = new StringBuilder(”123456789”); s.substring(3,6).delete( 1 ,2).insert( 1, “24”);
E. StringBuilder s = new StringBuilder(”123456789”); s.delete(0,3).delete( 1 ,3).delete(2,5).insert( 1, “24”);
public String makinStrings() {
String s = “Fred”;
s = s + “47”;
s = s.substring(2, 5);
s = s.toUpperCase();
return s.toString();
}
How many String objects will be created when this method is invoked?()
A. 1
B. 2
C. 3
D. 4
E. 5
F. 6
public class MyLogger {
private StringBuilder logger = new StringBuuilder();
public void log(String message, String user) {
logger.append(message);
logger.append(user);
}
}
The programmer must guarantee that a single MyLogger object works properly for a multi-threaded system. How must this code be changed to be thread-safe?()
A. synchronize the log method
B. replace StringBuilder with StringBuffer
C. No change is necessary, the current MyLogger code is already thread-safe.
D. replace StringBuilder with just a String object and use the string concatenation (+=) within the log method
Given this method in a class:
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append(‟<‟);
buffer.append(this.name);
buffer.append(‟>‟);
return buffer.toString();
}
Which is true?()
A. This code is NOT thread-safe.
B. The programmer can replace StringBuffer with StringBuilder with no other changes.
C. This code will perform well and converting the code to use StringBuilder will not enhance the performance.
D. This code will perform poorly. For better performance, the code should be rewritten: return “<“+ this.name + “>”;
最新试题
Which statement is true?()
Which statement is true?()
What is the result?()
Which three changes should be made to adapt this class to be used safely by multiple threads?()
What is the result?()
Which three will compile and run without exception?()
Which code, inserted at line 4, guarantees that this program will output [1, 2]?()
What is the result?()
Which two are possible results?()
Which two of statements are true?()