I assume that you are here to learn Java programming language and you don't have any programming language experience. So let us quickly get introduced to some important terms, starting with, what programing is and why you do it.
A programmer create software through a process called programming or coding. The purpose of programming is to develop an executable computer program that will automate performing a specific task or solving a given problem.
Programming involves activities such as analysis, design, generating algorithms and implementation of algorithms in a target programming language. These activities are also called as Software Development Lyfecycle (SDLC).
The process of programming often requires expertise in many different areas, like the application domain knowledge, specialized algorithms etc. For instance, if you are working on developing a software for a hospital, you will need to first understand certain things regarding how things work at the hospital.
A computer platoform might understand certain language, and is usually called a low level programming language. A low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture; commands or functions in the language map closely to processor instructions. A low level programming language may be also referred to as either machine code or assembly language.
However, it might not be that easy to learn and understand such a language. Therefore, there may be high level languages closer to your speaking language like English. A high-level programming language is a programming language with strong abstraction from the details of the computer. There will be other software, like compilers or interpreters, that can convert a high level language to a low level machine language before executing them.
A compiler is a computer program that transforms source code written in a programming language into another computer language, often in a binary form, that is understood by the computer platform. A compiler usually transforms a high-level programming language to machine code specific to a platform, so that it can then be directly executed in that platform.
An interpreter is a computer program that directly executes instructions written in a programming or scripting language, without previously compiling them into a machine language program.
Compiled languages uses a compiler to translate the source code to machine code specific to a platform, and then this compiled form is taken to any computer with that platform, and executed; compile once and execute as many times. Interpreted languages compiled line-by-line as as that line was about to be executed.
Performance was not the best with complete interpreted languages, as, if a loop or subroutine caused certain lines to be executed multiple times, they would be recompiled every time.
Newer programming languages like Java, Python etc. uses a combination of compiler and interpreter; a compiler may output some form of intermediate bytecode (Java's .class files or Python's .pyc files), which is then executed by a bytecode interpreter (Java Virtual Machine or Python virtual machine).