This week's book giveaway is in the Agile and Other Processes forum.
We're giving away four copies of The Little Book of Impediments (e-book only) and have Tom Perry on-line!
See this thread for details.
Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Having terrible issues studying for the Java Associate Certification exam

 
Paul Boland
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Folks.

I studied Java on my third level college course in computer programming. I really enjoyed the language and scored in the 80% - 90% range on my exams and class assignments. With my Honours Degree now obtained and my college course finished, I have decided to try and become officially Java Certified. The first level in achieving this goal is the Java Associate Certification. For the past few months now I have been studying for this exam from four books I bought. I have taken a number chapter tests and full length mock exams, but to my dismay I am scoring terribly!! My scores are averaging around 35% - 55%!?! I am at a loss to explain this because Java was one of my strongest points on my college course.

I am pouring hours upon hours of just about every day of the week into my Java studies and yet my mock exam tests are not reaching the 63% pass score . I am becoming quite dismayed at how poorly I am doing here and am at a loss to explain it. I wrote to my college asking for help in studying and getting this certification but they never responded which I felt was very bad on their part. I have no one to help me study and I am starting to feel like I am banging my head off a brick wall as I spend hours and hours and hours studying without achieving the goal of a passing grade. Considering the exam is nearly two hundred euro to apply for, I am unwilling to apply for the exam voucher until I am scoring well enough on the mock exams but that just doesn't seem to want to happen.

Can anyone please give me any advice on why my scores are so poor and why I can't seem to improve them?

Thanks.
Paul.
 
Steve Luke
Bartender
Posts: 4181
22
IntelliJ IDE Java Python
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You need to go over the answers to each mock exams and find the ones you got wrong and find out why you got them wrong. That should help you figure out which parts of Java you are having trouble with and why. Then use that information to steer your study.
 
Roel De Nijs
Sheriff
Posts: 10662
144
AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Paul,

First of all a warm welcome to the CodeRanch!

Paul Boland wrote:I really enjoyed the language

I'm not surprised. Java is a great language and so much fun!

Paul Boland wrote:For the past few months now I have been studying for this exam from four books I bought.

Which books did you buy? Already 1 important note: you don't study a language from only reading a book. You only learn it while doing and creating many, many, many little programs and fiddling with them.

Paul Boland wrote:I wrote to my college asking for help in studying and getting this certification but they never responded which I felt was very bad on their part.

Such an experience you won't have here on the ranch. We are truely a friendly place for greenhorns. So just have a look around, use the search engine and when you have doubts/questions, just post them and a whole community will try to help you to the best of their abilities.

Paul Boland wrote:Can anyone please give me any advice on why my scores are so poor and why I can't seem to improve them?

Do you see some pattern/cause for your low scores? E.g. not being able to answer all question in the given time; having difficulties with overloading/overriding; not being able to spot compiler errors; having trouble with string concatenation;... This thread has some valuable tips.

Hope it helps!
Kind regards,
Roel
 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 35279
384
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Paul,
Welcome to CodeRanch! It is wise not to take the official exam until you are scoring better on practice. The thread Roel linked to contains good advice.

And post here with questions. They can be technical. Or they can be "I ran out of time." Don't worry; you are no longer alone! Many people have passed the exam and this summer you will too!
 
Paul Boland
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi. Thanks for the replies. The four books I'm working from are...

OCA Java SE7 Certification Guide by Mala Gupta.
Java Practice Questions by Esteban Herrera.
Java The Complete Reference by Herbert Schildt.
Java SE7 Associate Practice Exams by Hanumant Deshmukh (Kindle book).

The problem I seem to have having is that when I'm doing practice questions, I come to a question, look at the multiple choice answers, pick my answer because I'm sure it's right, but when I check the answers I find I am wrong and when I read the explanation for why I got it wrong it makes sense but yet when I encounter a similar question in another exam I make the same mistakes!! What is really annoying me is that I was scoring so highlight on my Degree course at college and yet these certification exams are completely tripping me up. It's frustrating to be scoring so poorly now and it's starting to knock my confidence on if I can actually get this certification.

I really appreciate the feedback above and will take it all on board. I hope I can apply for and sit and get this certification because I do enjoy programming in Java and would like to try and pursue a career in it.

Thanks again.
 
Warren Weis
Greenhorn
Posts: 14
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Paul:
I'm a greenhorn too, and I am working my way towards taking the exam. My scores have gotten better, but it has been a long process. I think part of the problem is that Java is elegantly simple in its essence, but complex in its specifics. So, you get lured into thinking you know the subject until you see that exam question that asks you something not quite obvious, such as (gulp), what happens when a wrapper reference pointing to null is compared to a primitive? Does the null get 'unwrapped' to zero or does it throw an exception?

One thing that has helped me is to try and think like the compiler. That may sound strange, but I found that it helped me understand why the constant String Pool works the way it does, why the compiler uses the reference type, instead of the object the reference is pointing to to determine whether some method calls are legal, etc.

I hope that makes sense, but the other piece of advice I can give you is to keep plugging away. You will find as you do more studying and take more mock exams that you will not be as easily fooled by the exam questions.

Good luck to you (and to me).
 
K. Tsang
Bartender
Posts: 3585
16
Android Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Paul and Warren

Hope you are doing well on your studying. I agree with Warren about "thinking like the compiler" because passing the (OCP)JP exam is what people used to call "walking compiler". Probably still is.

Beside studying, write code, lots of it. Write programs to verify what you read to test your understanding. Then tweak it to see it throws exception or something.
 
Roel De Nijs
Sheriff
Posts: 10662
144
AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Paul Boland wrote:OCA Java SE7 Certification Guide by Mala Gupta.
Java Practice Questions by Esteban Herrera.
Java The Complete Reference by Herbert Schildt.
Java SE7 Associate Practice Exams by Hanumant Deshmukh (Kindle book).

I only have some experiences with the Mala Gupta one. But even with just that book you should be able to pass this certification.

Paul Boland wrote:The problem I seem to have having is that when I'm doing practice questions, I come to a question, look at the multiple choice answers, pick my answer because I'm sure it's right, but when I check the answers I find I am wrong and when I read the explanation for why I got it wrong it makes sense but yet when I encounter a similar question in another exam I make the same mistakes!

After reading a question I look at the multiple choice answers and for every possible answer I tell myself why it's incorrect or why it's correct. That way I look at every possible answer and think about every answer. I'm not satisfied with a simple "answer A is wrong", it must be "answer A is wrong because ...". So every correct answer is well-thought and well-argumented (and sometimes it's still wrong ).

Do you study from mainly the study guides? Or do you also practice writing code snippets using some text editor, java and javac? And then make small changes and try to predict what happens if you run it... The latter approach is of course the better one. You don't learn a language from just reading. You have to learn using Nike's slogan: Just do it! I always try to encourage ranchers to write code snippets and fiddle with them. That's why I (try to) challenge them when they post a question/doubt/remark (like here)

Good luck!
 
Roel De Nijs
Sheriff
Posts: 10662
144
AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Warren Weis wrote:I'm a greenhorn too, and I am working my way towards taking the exam. My scores have gotten better, but it has been a long process.

I'm happy to read something like this. In my opinion people rush too quickly to get the certification they pursue. And I can understand if your boss is nagging about it, or you get a raise when you are certified,... that you want to get that certification as soon as possible. But getting certified is much more than just that piece of paper. It's all about becoming a better developer, understanding even the subtle aspects of the language, knowing what you do and why you have to do it like that,... And that simply takes time!
When I was preparing for the SCJP 5.0 (the certified programmer for Java 5.0) I was already a java programmer/developer for 2.5 years (and already passed the SCJP 1.4 certification). But I still learnt a lot about Java and how it works under the hood. It made me without any doubt a better java developer!
When I was preparing the SCJP 1.4 certification I didn't write code snippets, not even on threads (the one topic I wasn't using in my daily job as a java programmer/developer). On the actual exam I scored 50% on the threads section. For SCJP 5.0 I focused on my weakness from the SCJP 1.4 exam and made a bunch of code snippets about threads, locking, synchronization,... On the actual exam I scored 88% on the threads section. Practice makes (almost) perfect!

Warren Weis wrote:I think part of the problem is that Java is elegantly simple in its essence, but complex in its specifics.

So true! The subtle difference between the default access modifier and the protected access modifier is a good example. Wait until you start with the wonderful world of generics (for the OCPJP7 )

Warren Weis wrote:One thing that has helped me is to try and think like the compiler. That may sound strange

That's not strange at all! That's exactly what you have to do on the actual exam too. On the exam you have to be the java compiler (and spot problems) and the java runtime (know when everything runs normally or when you might expect a runtime exception). That's why the general advice is not to use an IDE, but just the text editor of your choice, javac.exe, java.exe and the command line. Back in the days when I was in college, my computer wasn't capable of running any IDE. So I used the bare basics: notepad, javac.exe and java.exe. Sometimes it was really frustrating: every typo is punished, punished hard But I learnt so much! So I was used to scan my code for problems (both syntax and logical errors) before I started the process of compiling and running the application. Because with each mistake I had to redo the complete process over and over again, sometimes I just wanted to And on the java exam we got just paper and pencil (no computer with an IDE), so I was already trained to be java compiler and java runtime

There are a few basics/rules you really have to know/master. When looking at a question (and the possible answer) these basics/rules should popup automatically as a reflex. Some of them are:
  • the 4 access levels (and 3 access modifiers)
  • rules for valid overloading
  • rules for valid overriding
  • string concatenation rules
  • the reference type determines which methods can be invoked (at compile time), which method is actually executed is based on the actual object's type (at runtime)


  • Hope it helps!
     
    Paul Boland
    Greenhorn
    Posts: 3
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Thanks for so much extra feedback, hugely appreciate it. Warren, best of luck with your studies too and thanks for the advice from a "greenhorn" . I'm still at it, I haven't given up and I won't. My scores seem to be getting better but it's a slow process.

    Yes, I do write same code, I use Textpad so I have to type everything in myself and the IDE is not popping up the code for me as I enter it. I will get there in the end but it will take time.

    Thanks again!!
     
    Peter Gray
    Greenhorn
    Posts: 7
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Hi Paul,

    Came across this link from Roels link in another thread.

    Roel,

    Thanks for your answers all over this forum. You have helped me understand a lot what i know about java in your replies to others.

    Paul,

    I have been at it for months and hoping to sit the exam in the next few weeks. i thought I was good but then, like you 2 mocks brought me back down to earth very fast. I believe that when we initially think we are ready for the exam that we are still only halfway there. Online courses have helped me big time in the understanding. I spend 4 days evenings a week on the book and 2 doing an online course, averaging about 2.5/3 hours a day. it is slowing coming together as i don't do a java job. My company is willing to put me in one once I pass the first exam but the way i look at it, if I pass it and only know a small bit I will be in trouble on the job, whereas if i take another 2 months, i will know more which can only benefit my job and skillset.

    If you know any java programmers and idea would be to complete a mock, go through every question and explanation (right or wrong as you may have got lucky with a correct one) and bring a list of your questions to that person and ask them to break it down. You will find that if you have 20 questions you don't understand, it will only really be 12 due to overlapping and weakness in a certain area.

    Hope that was of some help,

    Peter
     
    Guillermo Ishi
    Ranch Hand
    Posts: 789
    C++ Linux Python
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Paul Boland wrote: I come to a question, look at the multiple choice answers, pick my answer because I'm sure it's right, but when I check the answers I find I am wrong and when I read the explanation for why I got it wrong it makes sense but yet when I encounter a similar question in another exam I make the same mistakes!! What is really annoying me is that I was scoring so highlight on my Degree course


    I was doing something similar on the mock tests maybe. I would choose the wrong answer and when the explanation for the right answer was given, I would realize I knew that so why did I answer it wrong. The fix for that, for me, involved learning to read the questions very carefully, and that problem disappeared.

    The new 70 question test is very hard I think (I just got a 60 on it) and not so much like the current mock exams. Even though it's shorter, concentrate on endurance. After you know the Java basics, concentrate on mock questions where the program flow goes through as many crazy twists and turns as possible. There are very few question on the 70 test that don't do that themselves. That was the only issue for me. I ended up selecting random answers as I ran out of time.
     
    Roel De Nijs
    Sheriff
    Posts: 10662
    144
    AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Peter Gray wrote:Roel,

    Thanks for your answers all over this forum. You have helped me understand a lot what i know about java in your replies to others.

    Glad to hear my comments were helpful to you. It's this kind of feedback that keeps us going Thanks!

    Peter Gray wrote:My company is willing to put me in one once I pass the first exam but the way i look at it, if I pass it and only know a small bit I will be in trouble on the job, whereas if i take another 2 months, i will know more which can only benefit my job and skillset.

    That's definitely the right attitude! Just take the time your need, haste makes waste. You'll definitely ace this exam and you'll have another advantage where you, your company and your colleagues will benefit from: a good/great understanding of the java basics because of your in-depth preparation.
     
    Roel De Nijs
    Sheriff
    Posts: 10662
    144
    AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Guillermo Ishi wrote:The fix for that, for me, involved learning to read the questions very carefully, and that problem disappeared.

    Another valuable tip indeed: you can only correctly answer a question if you know what is asked! For example: sometimes they ask to select the INcorrect statements instead of the correct ones.

    Guillermo Ishi wrote:After you know the Java basics, concentrate on mock questions where the program flow goes through as many crazy twists and turns as possible.

    You should not only stick to answering all these mock questions. But these questions should be a starting point to create code snippets yourself and start experimenting. What happens if I change the access modifier of that method? And will it still compile if I change the return type? And will the output be the same if I put the default case of a switch statement at the top of the switch? And if I remove the break statements? ... Things you have tried yourself and seen with your own eyes, you'll remember much longer than if you have simply read them from a book or encountered on a mock exam.

    Guillermo Ishi wrote:I ended up selecting random answers as I ran out of time.

    You should always work with a time limit per question, so you can view and answer all the questions. That way you'll be guaranteed not to miss some easy ones which you could answer in less than 10 seconds.
     
    Guillermo Ishi
    Ranch Hand
    Posts: 789
    C++ Linux Python
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Roel De Nijs wrote:
    You should always work with a time limit per question.


    I would probably use up five minutes on that over 70 questions. I have been skipping over the hard questions and then doing a second pass for the harder ones. At least by the time you try to answer the hard one your subconscious has been exposed to it. Also there are times when you answer a question instantly which would let you spend twice the allowed time on one hard question. I've been trying to keep loose track of time vs questions left and whether it would be more to my benefit to guess at a question or continue fighting.

    I will try it your way and see what it leads too. You have a lot more experience taking tests than I do. I already do lots of snippet writing as you suggest.

    Today I was stumped by a method from an interface. It didn't occur to me that it needed to be marked public in the implementation. But at the same time I knew the interface method was automatically public and that you cannot reduce the visibility of an inherited method. It would be so much faster if they just asked the straight questions without the snippet - what is the default access of an interface method and can you reduce the visibility of an inherited method! No game theory needed.



     
    Roel De Nijs
    Sheriff
    Posts: 10662
    144
    AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Guillermo Ishi wrote:
    Roel De Nijs wrote:
    You should always work with a time limit per question.


    I would probably use up five minutes on that over 70 questions. I have been skipping over the hard questions and then doing a second pass for the harder ones. At least by the time you try to answer the hard one your subconscious has been exposed to it. Also there are times when you answer a question instantly which would let you spend twice the allowed time on one hard question. I've been trying to keep loose track of time vs questions left and whether it would be more to my benefit to guess at a question or continue fighting.

    Maybe it was a little too strongly worded, because it's of course not the purpose that you focus more on the clock/time than on your questions. But if you get the feeling you are stuck on a question, you should simply proceed. If you don't get that one, it's just 1 point you'll miss. But if you keep persisting and you loose a substantial amount of time, you risk 5 or maybe 10 unanswered questions (and that's 5 or 10 lost points). But maybe that's something you learn when you get more experienced in taking these certification exams. When I took my 1st one (the java 1.4 programmer) I was so afraid about the threading questions, I just skipped those and marked them for review Only for the sole purpose: not to get stuck or get completely absorbed by that 1 question and risk running out of time before I had viewed all questions

    Guillermo Ishi wrote:I already do lots of snippet writing as you suggest.

    You learn a language by doing, not with reading and answering questions. Some people already have a java job, so they can exercise writing code snippets 8 hours a day. Other ones don't have that luxury and have to put in some extra effort. But Notepad, javac and java are so much fun Good old memories! Brings me back to my last year at college, my computer was so outdated I wasn't able to run any IDE for the java course. So I used the basics (notepad, javac & java) and in the beginning I struggled and sometimes I had a few moments. But once I had some experience, I learnt the language and its API 5x faster than my fellow students.

    Guillermo Ishi wrote:Today I was stumped by a method from an interface. It didn't occur to me that it needed to be marked public in the implementation. But at the same time I knew the interface method was automatically public and that you cannot reduce the visibility of an inherited method. It would be so much faster if they just asked the straight questions without the snippet - what is the default access of an interface method and can you reduce the visibility of an inherited method! No game theory needed.

    That's such a classic. You are almost guaranteed to have such a question on the exam, mostly combined with some heavy, complex iteration logic If I am not 100% focused, I still sometimes get tricked by that one (and I'm a java developer for 10 years now). Keeps it fun and challenging!

    Programming is not something theoretical, it's more practical. That's why the most questions are code snippets where you have to apply your knowledge. Just a few questions are API facts and memorization. But the 1st step is of course knowing your theory. And you clearly know your theory! Now the most important part comes into play: being able to spot it in code snippets. That requires lots of exercise and of course a fully focused mind! But if you are able to spot these compiler errors quickly, these questions are the easiest one to answer and you have lots of time left to spend on other harder questions. In fact the last SCJP exam (for Java 1.6) I took was an exam with a rather high percentage of questions resulting in compiler error or runtime exception. You can read here about my experience of that exam.
     
    Tiberius Marius
    Ranch Hand
    Posts: 115
    3
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    I have an issue with writing small code snippets . I mean i just cant be motivated to do it , the concept is usually simple and i understand it and have a very hard time motivating myself to write code under 5-8 lines .I understand practice is key to anything especially programming so i m trying to find exercises to resolve related to the subject at hand . And the hard thing with snippets is that you must create the "problem" that you want to resolve , for some reason i find that 5 times harder then just resolving a problem i find in an exercise.Maybe i m overburned with studying ,at this point i m in the "death march" part of the OCAJP 7 certification :| . Any suggestions or maybe a source of exercises related to the topics of OCAJP7 ? I recommend Intro in Java Programming for anyone in the same situation as me as they have allot of exercises on each chapter .
     
    Roel De Nijs
    Sheriff
    Posts: 10662
    144
    AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Tiberius Marius wrote:I have an issue with writing small code snippets .

    No problem! Just write big code snippets
     
    Roel De Nijs
    Sheriff
    Posts: 10662
    144
    AngularJS Chrome Eclipse IDE Hibernate Java jQuery MySQL Database Spring Tomcat Server
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Roel De Nijs wrote:
    Tiberius Marius wrote:I have an issue with writing small code snippets .

    No problem! Just write big code snippets

    No seriously, you don't learn a programming language just by reading and answering some questions. It's just like learning how to drive a car. You don't learn it by just reading a text book. You simply have to get your hands dirty and just do it And when you have some practical experience with a given concept, you'll have a better understanding and will remember it much longer.
    But you are not of course not required to create a bunch of little snippets. Of course these ones are the easiest to play with (change access modifier, mark method final,...) but that's not the only practice you can get. When I was studying for the SCJP 5.0 I wrote a bunch of programs to practice my threading knowledge: a car wash with different lanes, a bank account, an ice cream man selling scones to a bunch of kids,...

    The most important thing is getting hands-on experience. How you do it, is completely up to you.

    Good luck!
     
    • Post Reply
    • Bookmark Topic Watch Topic
    • New Topic