Reference type is like pointer in c. The difference is the reference type is not allow to do arithmetic operation. You can only use reference type to refer to the other object or pass the reference to functions.
int ref use stack memory
evaluate the content of reference type variable j
change original value by its reference.
change original value by its reference. print reference
struct type reference
pass struct data to function by reference