In regard to your question, a beginner to learn core Java (Java SE) before moving on to enterprise Java (Java EE) (eg Servlets/JSP, JSF, EJB etc)
What areas of core Java should one must know to get started? That's a good question. I would say:
OO concept: inheritance, polymorphism, encapsulation
access modifier, instance/class/local variables, flow control (if/else, switch), looping (for, while)
String class, wrapper classes (Integer, Double etc), Comparator/Comparable,
java.io package (able to read/write files)
Java collections framework (List, Set, Map, Queue, Deque etc)
I completely agree with K. Tsang, but instead of just throwing a ton of names at you with things you should learn, do i suggest that you check out http://thenewboston.org/list.php?cat=31 . It is a guy called Bucky that has made a ton of videos for people completely new to java. He makes it very fun to learn since he is a very funny guy and makes some great tutorials.
Just follow his tutorial videos from the beginning and then when you are done you can check out his other java tutorials for more skilled programmers.
I have used his tutorials myself and have learned a lot from them.
If you get stuck on some problem you cant figure out, i suggest you try to google it. you will be amazed how many people has had the excact same problem :)
You had your fun. Now it's time to go to jail. Thanks for your help tiny ad.