A Program is a set of Statements/Instructions given to the computer to perform a Particulate/Specific task.
Such Programs or Collection of Programs make a software.
But there is one problem
The Instructions that you give to the computer should be given in a language that computer Understands.
Computer knows only one language known as Machine Language.
Machine Language is a language which is directly understood by the computer, because it is written in Binary (0 & 1), and our computer understand 0 & 1 only.
Ex- a- 1010
It is very difficult to learn and write each & every thing in the 0 & 1. It is a boring job.
languages are categorized in two categories:
Low Level languages are those languages which having dependency on the hardware.
These languages are closer to the Machine & difficult to use.
Ex- Machine Language
High Level languages are those languages which are closer to the programmer & easier to use.
These Languages are the English Like Languages.
Java is one of the High Level Language.
For Better Understanding Watch This Video :-