Variables can be either primitive or reference. We can use variables as instance variables (object state), local variables (variables declared in methods), arguments (values sent to a method when calling it), and as return types (values sent back to the caller of the method).
Primitives hold the fundamental values (the simplest pieces of information, such as numbers and characters) while Object references hold references to objects (objects hold states and behaviors like stated previously, and also contain primitives within).
In java, you must be careful with type. You can't declare an integer variable (whole number) and assign it a double (decimal). While writing code in java the compiler can detect most variable type problems such as referencing a Dog into a Cat variable. Variables must have a type and name. Primitives can hold different values and are used each for different purposes. For example, when talking about weight you need decimals to be precise, so you can use a double or a float, but when talking about age and only care about the years we can use an integer as your type.
Primitive types:
boolean - true of false
char - character
numeric:
byte - 8 bits
short - 16 bits
int - 32 bits
long - 64 bits
floating point:
float - 32 bits
double - 64 bits
You can assign value to a variable by:
For example:
double pi = 3.14;
char last = 'e';
boolean isHungry = true;
double radius = 4.8;
double circ = 2 * pi * rad;