Difference between reference and object in java?

On the lower level of Java, a "reference" can be thought of like a pointer in C. It is essentially an integer which refers to (points to) a location in memory where the object data exists.

// "button" is a reference to a JButton with a "1" on it (the object).

JButton button = new JButton("1");