File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Mock Exam Errata and the fly likes javacaps exam explanation? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Mock Exam Errata
Bookmark "javacaps exam explanation?" Watch "javacaps exam explanation?" New topic
Author

javacaps exam explanation?

jayu jadhav
Greenhorn

Joined: Apr 13, 2001
Posts: 13
I HAVE DOUBTS FOR FOLLOWING Q.S FROM JAVACAPS EXAM 1. WILL ANYONE PLEASE CLEAR THEM FOR ME?
THANKS.
10). What is the result when you compile the and run the following code?
public class ThrowsDemo {
static void throwMethod() {
System.out.println("Inside throwMethod.");
throw new IllegalAccessException("demo");
}
public static void main(String args[]) {
try {
throwMethod();
} catch (IllegalAccessException e) {
System.out.println("Caught " + e);
}
}
}
A) Compilation error
B) Runtime error
C) Compile successfully, nothing is printed.
D) Inside throwMethod. followed by caught: java.lang.IllegalAccessExcption: demo

ANSWER IS A. WHY?

11) Which statements about garbage collection are true?
A) The garbage collector runs in low memory situations
B) You can run the garbage collector when ever you want.
C) When it runs, it releases the memory allocated by an object, which is no more in use.
D) Garbage collector immediately runs when you set the references to null.

ANSWERS ARE A,C. WHY NOT B TOO?
26) Which of the following are correct, if you compile the following code?
public class CloseWindow extends Frame implements WindowListener {
public CloseWindow() {
addWindowListener(this); // This is listener registration
setSize(300, 300);
setVisible(true);
}
public void windowClosing(WindowEvent e) {
System.exit(0);
}
public static void main(String args[]) {
CloseWindow CW = new CloseWindow();
}
}
A) Compile time error
B) Run time error
C) Code compiles but Frame does not listen to WindowEvents
D) Compile and runs successfully.

ANSWER IS A. WHY?
39) Which of the following statements are true?
A) An inner class cannot be defined as private.
B) Static methods can be overridden by static methods only.
C) Static variables can be called using class name.
D) Non static variables can be called using class name.
ANSWERS ARE B,C. WHY B? STATIC METHODS CANNOT BE OVERRIDDEN BUT HIDDEN BY STATIC METHODS.
Lam Thai
Ranch Hand

Joined: Apr 02, 2001
Posts: 117
Originally posted by jayu jadhav:
I HAVE DOUBTS FOR FOLLOWING Q.S FROM JAVACAPS EXAM 1. WILL ANYONE PLEASE CLEAR THEM FOR ME?
THANKS.
10). What is the result when you compile the and run the following code?
public class ThrowsDemo {
static void throwMethod() {
System.out.println("Inside throwMethod.");
throw new IllegalAccessException("demo");
}
public static void main(String args[]) {
try {
throwMethod();
} catch (IllegalAccessException e) {
System.out.println("Caught " + e);
}
}
}
A) Compilation error
B) Runtime error
C) Compile successfully, nothing is printed.
D) Inside throwMethod. followed by caught: java.lang.IllegalAccessExcption: demo

ANSWER IS A. WHY?

11) Which statements about garbage collection are true?
A) The garbage collector runs in low memory situations
B) You can run the garbage collector when ever you want.
C) When it runs, it releases the memory allocated by an object, which is no more in use.
D) Garbage collector immediately runs when you set the references to null.

ANSWERS ARE A,C. WHY NOT B TOO?
26) Which of the following are correct, if you compile the following code?
public class CloseWindow extends Frame implements WindowListener {
public CloseWindow() {
addWindowListener(this); // This is listener registration
setSize(300, 300);
setVisible(true);
}
public void windowClosing(WindowEvent e) {
System.exit(0);
}
public static void main(String args[]) {
CloseWindow CW = new CloseWindow();
}
}
A) Compile time error
B) Run time error
C) Code compiles but Frame does not listen to WindowEvents
D) Compile and runs successfully.

ANSWER IS A. WHY?
39) Which of the following statements are true?
A) An inner class cannot be defined as private.
B) Static methods can be overridden by static methods only.
C) Static variables can be called using class name.
D) Non static variables can be called using class name.
ANSWERS ARE B,C. WHY B? STATIC METHODS CANNOT BE OVERRIDDEN BUT HIDDEN BY STATIC METHODS.

Hi,
#10. You invoke method throwDemo(), which belongs to class ThrowsDemo() but you did not instantiate ThrowsDemo object in main()!
#11. GC cannot be forced. We can provide code to signal to GC that an object is ready for GC but we cannot tell GC to reclaim memory immediately when we like so.
#26. You did not setup a Frame.
#39. Here is the rules:
a) It is illegal for a subclass to hide an instance method (a non-static method) of its superclass with its own static method of the same signature. This will result in a compiler error.
b) It is illegal for a subclass to override a static method of its superclass with its own instance method of the same signature. This will also result in a compiler error.
The B) answer definitely rules out overridden and hiding aspect of mix access (static vs. non-static).
Hope that helps. Am I missing anything?
Regards,
Lam
Jane Griscti
Ranch Hand

Joined: Aug 30, 2000
Posts: 3141
Hi Jayhu, Lam ...
Lam, the compile error in Q.10 is not due to a lack of an instantiation. The <code>throwsMethod()</code> is static and therefore accessible to <code>main()</code>.
A compile error occurs in Q.10 because <code>throwMethod()</code> does not declare that it throws an exception; the signature should be <code>static void throwMethod() throws IllegalAccessException { // method code }</code>
See JLS�11.2

For each checked exception which is a possible result, the throws clause for the method (�8.4.4) or constructor (�8.8.4) must mention the class of that exception or one of the superclasses of the class of that exception.

Hope that helps.
------------------
Jane Griscti
Sun Certified Programmer for the Java� 2 Platform
[This message has been edited by Jane Griscti (edited April 14, 2001).]


Jane Griscti
SCJP, Co-author Mike Meyers' Java 2 Certification Passport
Lam Thai
Ranch Hand

Joined: Apr 02, 2001
Posts: 117
Originally posted by Jane Griscti:
Hi Jayhu, Lam ...
Lam, the compile error in Q.10 is not due to a lack of an instantiation. The <code>throwsMethod()</code> is static and therefore accessible to <code>main()</code>.
A compile error occurs in Q.10 because <code>throwMethod()</code> does not declare that it throws an exception; the signature should be <code>static void throwMethod() throws IllegalAccessException { // method code }</code>
See JLS�11.2
Hope that helps.

Thanks Janes - I stand corrected.
David Wake
Greenhorn

Joined: Apr 18, 2001
Posts: 17
I think the problem in #26 is that the class does not implement ALL the methods in the WindowListener interface.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: javacaps exam explanation?