What is the difference between java and core java?

Solution 1:

"Core Java" is Sun's term, used to refer to Java SE, the standard edition and a set of related technologies, like the Java VM, CORBA, et cetera. This is mostly to differentiate from, say, Java ME or Java EE.

Also note that they're talking about a set of libraries rather than the programming language. That is, the underlying way you write Java doesn't change, regardless of the libraries you're using.

Solution 2:

"Core Java" is Oracle's definition and refers to subset of Java SE technologies.

This actually is not related to Java language itself but rather to set of some 'basic' packages. As a result it affects development approaches.

Currently Java Core is defined as a following set:

  • Basic technologies
  • CORBA
  • HotSpot VM
  • Java Naming and Directory Interface (JNDI)
  • Application monitoring and management
  • Tools API
  • XML

But as you probably understand even term 'basic technologies' is somewhat unclear ;-) so this is not so strict definition. Here is official page for this term:

  • Java SE Core Technologies

Here is another 'global' link to Java SE platform overview.

  • Java SE at a glance

Solution 3:

Some companies will put "core java" to differentiate from Java EE, but it's still just your basic Java.