Edmund Yong

Ranch Hand
+ Follow
since Nov 16, 2003
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Edmund Yong

Terrence Lee wrote:From my little experience in planning for OCP11, I don't think that it's possible to successfully get any certification on work experience alone.

Also concerning, is the distinction you draw between Spring Boot and Spring Framework.  Boot doesn't exist without the core framework, so by inference, you should already know about it.

Hi Terence,

Of course I know that I can't get certification on work experience alone. I would have to study for it.

I am just not sure if I need to get my hands dirty playing around with the standard Spring framework, if I were to study for the certification.
I am considering aiming for Spring certification (VMware Spring Professional 2021). If I only work with Spring Boot, and not the standard Spring framework, can I still go for the certification?
Hi Charles,

I'm sorry to learn that you didn't pass 816. I think you should aim for 819. It doesn't seem to make sense to go for Java 8 certification now. I'm sure this certification will retire soon. So why stress yourself again with another possible deadline? If you go for 819, you can take all the time you need to study. For your info, I have used Java 8 for a few years now as it is the version we use in my company, but I've never used any of the Java 11 features in work.
Congratulations! You took only 4 weeks to study for the 816 then? I started studying 816 at the beginning of August. Then I learned about the retirement of 816 at the end of August, and so I hurried up and eventually took the exam 2 weeks ago. Just like you, I was not happy about the decision to retire 816. In fact, I complained to Oracle about it.

Rade Koncar wrote:Also on page 538: Instantiating an inner class requires an instance of the outer class, such as calling new Outer.new Inner().

It is strange that Outer refers to the instance, Capitalized names often indicate a type.

"Outer" refers the type, not the instance. The instance is "new Outer()".
I complained to Oracle that replacing 1Z0-815/1Z0-816 with 1Z0-819 is unfair to those of us who took the old route. We paid for two exams instead of just one, and 1Z0-819 only takes 90 minutes, a quarter of the 360 minutes required for the 1Z0-815/1Z0-816 exams. Not to mention that 1Z0-819 has a reduced scope. That is cheapening the certification.

Charles O'Leary wrote:After reading this thread again, I noticed that the "Memorize this table" notation does not appear for every table.

To the point of feeling overwhelmed, for those that passed by using the Sybex 816 book mainly, do you actually advise that I "only" have to memorize the tables that specifically say "Memorize this table"?  Or rather, the tables where it specifically says "Memorize this table" are tables that  I should ensure that I have 100% recall on, in addition to the other tables that I may not have as much recall on but would obviously add value otherwise?  (I use Java 6 everyday for work, although I did obtain OCA 8.)  

I didn't actually do any hard memorization of any table. When you already know a topic well, there is no need to memorize. I passed with 88%. The only tables that would really require pure memorizing would be tables 6.4 to 6.6 on the Java modules. The book says there is no need to memorize, but you should be able to pick them up from a line up. But to me, that's the same as memorizing. Athough I can remember table 6.4, I didn't actually bother about 6.5 or 6.6. It is just ridiculous to memorize these. In the exam, I didn't encounter any questions requiring knowledge of tables 6.4 to 6.6.

Which tables are you having problems remembering?
I believe that this was already reported as an errata previously for the 815 study guide:


See page 528.
Jeanne, you're right. The questions did test what they appear to be. They were quite straight forward. I passed with 88% today, better than the 82% I did for 1Z0-815. I actually think it's easier than 1Z0-815 as there were many easy questions which didn't take much time to answer. What I think is difficult about your study guide questions is that a lot of them have a "The code does not compile" in their answer choices. I only encountered two or three questions with such a choice, which made answering them much easier.
Today I took the 1Z0-816 exam and passed with 88%. That's about 70 out of 80 questions correct. I passed 1Z0-815 in early March this year, but I had to wait for the study guide by Scott and Jeanne to come out in July. I started studying for 1Z0-816 in early August. I had planned to take the exam the earliest in October, but due to the retirement of 1Z0-816 by end of September, I quickly took the plunge and registered for the exam as soon as possible. I have a full time job, so most of my studying were on weekends. For the last three days before the exam, and on the exam day today, I applied for leave from work. That gave me a full five days (including the weekend) for the exam cram. I would have preferred to have studied two or three months before taking the exam. This rush to take the exam actually made me quite stressed. In the end, it was worth it. I actually scored better than 1Z0-815, which I got 82% for three months of study.

I was quite surprised to see many questions in 1Z0-816 which were quite easy. They were like four answer choices, and the answers were obvious. There were some questions that I had trouble with, and I had to mark them for review later. I studied with the study guide and doing the questions on the book's test bank online only. I find that the exam questions were easier than those in the book and test bank. They were not as tricky and were more straight forward. For example, if they are asking you about one topic, they will not trick you for not paying enough attention and having an answer totally nothing to do with the topic. This is something the study guide and test bank like to do. There were also only about two or three questions with an answer that says that the code will not compile (contrast this to the study quite and test bank with many questions having such an answer choice). This makes the exam a lot easier.

When I completed the exam, the result was displayed on the screen immediately. I was quite surprised because we were told that the answer will only be posted online after some time. In fact, getting the result immediately used to be the way when I took Sun certification and other certifications previously. After I was done and before I left the testing centre, I was given a piece of paper saying that the result will only be available later and that I will receive an e-mail notification about 30 minutes later on how to retrieve the result. I login to CertView as soon as I left the testing centre, and I can see my result there.

In CertView, I still can't see the certificate yet. Although I can see my latest result under "Latest PVUE Exam Results", it is still not reflected under "Assessment History", "Review Assessment History", "Review Accomplishment History" or "Download eCertificates". The web site says that it would take up to 48 hours for it to be processed. For those who have obtained any certification, how long realistically will you be able to get the certificate after you have completed the last exam?
I have come across questions in the Sybex online test bank which uses "at least one/once" in the answer choices. If the correct answer is exactly one, then is an answer with "at least one" correct?

Consider the two questions below.

In the first question, "Swim!" will print exactly once (no more and no fewer), and answer A is a correct choice.

What is the result of executing the following program? (Choose all that apply.)

import java.util.concurrent.*;
import java.util.concurrent.locks.*;
public class BeachManager {
  private Lock lock = new ReentrantLock();
  public void goSwimming() {
     lock.lock();           // y1
     if (lock.tryLock()) {  // y2
  public static void main(String[] args) {
     ExecutorService service = null;
     try {
        BeachManager b = new BeachManager();
        service = Executors.newFixedThreadPool(2);
        for (int i = 0; i < 2; i++) <br />            service.submit(() -> b.goSwimming());
     } finally {
        if (service != null) service.shutdown();
     System.out.print("Tasks Complete");

A. It prints Swim! at least once.
B. It prints Swim! exactly twice.
C. It prints Tasks Complete.
D. It hangs indefinitely at runtime.
E. The code will not compile because of line y1.
F. The code will not compile because of line y2.
G. It throws an exception at runtime.

In the second question, there can be exactly one abstract method in a functional interface (no more and no fewer), and yet answer E is an incorrect answer.

Actually this answer should be correct since abstract methods from Objects do not count. So a functional interface will have one or more abstract methods. But let's assume that answer E is not counting the abstract methods from Objects, and that it must have exactly one abstract method.

Which statements about functional interfaces are true? (Choose all that apply.)

A. A functional interface can contain default and private methods.
B. A functional interface can be defined by a class or interface.
C. Abstract methods with signatures that are contained in public methods of java.lang.Object do not count toward the abstract method count for a functional interface.
D. A functional interface cannot contain static or private static methods.
E. A functional interface contains at least one abstract method.
F. A functional interface must be marked with the @FunctionalInterface annotation.

enar wang wrote:By testing the sample questions at Wiley, I noticed that the IDE complains that ExecutorService must be final or effectively final, so that all the examples in our book must make a temp final copy of previous 'service' to let it compile and run?

If you are using "service" inside a lambda in the forEach statement, then it must be effectively final. You initialized "service" to null, and then you assign it to Executors.newSingleThreadExecutor(), so that means it is no longer effectively final.

Jeanne Boyarsky wrote:
We were trying to show that you shouldn't get too attached to the format for the later part of the string. You have to know that it starts with jdbc, has the db type (ex: mysql) and is colon delimited.

Then the following three should all be valid answers. After all, unless you are familiar with Oracle, you wouldn't know whether the database name is required or not.

The following table appears on page 316 of the Sybex 816 book by Scott and Jeanne. It doesn't say anything about automatic modules being able to read unnamed modules. In fact, from this table, named and automatic modules are the same in that they can only read named/automatic modules (those on the module path only). So is there something wrong in this table, or I misinterpret again?

Answer E is also correct based on the errata below.


So A, B, C, E, F are the correct answers.