"The ones you are weakest on". I know that's a glib answer, but this is different for everyone. For my, the concurrency questions are the hardest. For other people, it is other topics. I'd recommend getting a study guide and going through each chapter. Record you scores on the end of chapter questions and you'll know what to go over more times.
I would study everything evenly/equally first, but revisiting any subjects you have trouble with. When you feel comfortable with all the topics, you should start doing some practice exams. When you see the results of the practice exams it will soon become apparent which topics require more study + coding. Some software based practice exams (like Enthuware) will split up the topics into sections and tell you where you are weakest.
Also... a tip when you are doing practice exams and you get stumped on a question: write down the particular element that is troubling you (on a separate piece of paper to your notes), write down what particular bit of knowledge you may be missing, and any assumptions you are making in the exam. E.g. "Are ResultSet cursors 0-based or 1-based? Assumption: they are 1-based." ... If you had made that assumption in the practice exam and it lead to a correct answer - then there's a good chance you might not follow it up and cement the knowledge afterwards.... So after the practice exam, get your results, review what you got wrong and why, and then also review your notes on what you need to do some additional study, and see if your assumptions were correct, if not, why.