Menu
Active2 years ago
I was googling Java tutorials and related news to Java, until I saw this 'Core Java' now I am wondering what really is core Java? And what's the difference with Advanced Java? Is that another Java programming language? What are the topics under Core Java? And Advanced Java?
Java Interview Questions. In this Java Interview Questions blog, I am going to list some of the most important Java Interview Questions and Answers which will set you apart in the interview process. Java is used by approx 10 Million developers worldwide to develop applications for 15 Billion devices supporting Java. It is also used to create applications for trending technologies like Big Data to household devices like Mobiles and DTH boxes. The main difference between Core Java and Advanced Java is that the Core Java is used to build general applications while the Advanced Java is used to build enterprise level applications. Java is a general-purpose high-level programming language that helps to build a variety of applications. Advanced java consists 1.Collection Classes and objects 2.Socket Programming 3.Thread Concepts 4.AWT Package 5.Swings etc Both Advanced Java and Core Java Together Called as J2SE(Java Standard Edition) There is one more branch J2EE deals with Enterprise sloutions Another Branch is J2ME Deals with Embedded Applications like Mobile game softwares etc.
BTW can you suggest a good book for learning Advanced Java and Core Java? My first book was Java how to program 8th edition, and basically I know the fundamentals already. So all I need is another book to learn Core Java and Advanced Java. And is core Java the same as Java EE? What is a good book to learn Java EE?
Andrew Thompson154k2929 gold badges171171 silver badges362362 bronze badges
user962206user9622065,5725252 gold badges153153 silver badges240240 bronze badges
closed as not a real question by Smi, kleopatra, rael_kid, LittleBobbyTables, StarxNov 14 '12 at 13:59
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.
3 Answers
This Core / Advanced distinction in the tutorials should be viewed as being purely about learning about Java, and what order it is advisable to learn things.
I am wondering what really is Core Java?
It is the basic stuff you should learn first.
and what's the difference with Advanced Java?
Advanced Java is the stuff that you shouldn't try to understand until you are comfortable with the basics.
is that another Java programming language?
No. And it is not a different library. In fact, you won't see the core/advanced distinction in the documentation or packaging of the language or libraries. (According to one interpretation, 'Core Java' is everything in Java SE .. but frankly, that is not a useful classification; see below.)
what are the topics under Core Java? and Advanced Java?
There is no absolute answer to this. It depends on who has made the classification. The best thing is to look at the table of contents for the book, tutorial, course syllabus, whatever.
Independently of the above, Oracle also uses the phrase 'Core Java technologies' in marketing / PR documents to refer to the stuff in Java SE. Here is an example:
This says:
The Core Java technologies and application programming interfaces (APIs) are the foundation of the Java Platform, Standard Edition (Java SE).
.. without saying clearly what they are referring to. The take-away (for me is that 'Java Core' versus other things is an imprecise classification.
Some of the stuff that is included in the 'core' technologies (see above link) are either specialized or (more or less) legacy technology. With Java 8 they have started to modularizing the Java APIs (c.f. the 'compact profiles') and this is moving forward with Java 9 modules, and the deprecation of parts of CORBA support.
Then if you look in the various official Oracle Java Glossaries; e.g.
What Is Core Java
you probably won't find a definition for 'Core Java'. (I couldn't!)
All of this means that in reality when you see a Job or Position Description that calls for 'Core Java', it probably means that person who wrote it probably does not mean 'Core Java' in the sense of the Java SE Core Technologies page. (Or if they do mean that, then they are unrealistic about the actual job requirements!)
Stephen CStephen C546k7676 gold badges632632 silver badges977977 bronze badges
Note that
core!=basic
.- Core Java - J2SE
- Non-core Java - everything else that is not J2SE (J2EE, JAI, JOGL, JMF, .)
- Advanced Java - made up term with a different meaning for everyone that is asked.
154k2929 gold badges171171 silver badges362362 bronze badges
For Java EE I would start with an online tutorial, just so you can get familiar with parts, and decide if you need a book, and what parts of Java EE you want to get more information on.
For Core java I think this is nice: http://download.oracle.com/javase/tutorial/
As to which books to get, once you have gone through these you will get an idea where you want to focus more. For example, do you want to get better at graphics or concurrency? There are books more geared toward these. Perhaps you want to understand JavaServer Faces, then you can get a book on that.
You stated you know the fundamentals, but that is a pretty broad area, so you may want to first go through and not only have read about these topics, but experiment with them, so you can know what you do and don't know.
James BlackJames Black37.4k66 gold badges7272 silver badges139139 bronze badges