Q:

Conocer tipo de una variable en java

Recién empiezo a trabajar con java y me gustaría saber de qué formas puedo saber el tipo de una variable, si es int, long, short, boolean, etc. 
¡Gracias por la ayuda! 

A:

Para conocer el tipo de una variable lo puedes realizar mediante el método .getClass().getSimpleName() (también puedes usar .getName() ) y realizando un casting de (Object) para la variable de la cual deseas conocer su tipo. 

getSimpleName() Devuelve el nombre simple de la clase
  subyacente como se indica en el código fuente. 

Ejemplo:
int myInteger = 10;
String myString = "Hola";
double myDouble = 0;
Person myPerson = new Person();
short myShort = 20;

System.out.println("myInteger es de tipo " +  ((Object)myInteger).getClass().getSimpleName());
System.out.println("myString es de tipo " +  ((Object)myString).getClass().getSimpleName());
System.out.println("myDouble es de tipo " +  ((Object)myDouble).getClass().getSimpleName());
System.out.println("myPerson es de tipo " +  ((Object)myPerson).getClass().getSimpleName());
System.out.println("myShort es de tipo " +  ((Object)myShort).getClass().getSimpleName());

Salida:
myInteger es de tipo Integer
myString es de tipo String
myDouble es de tipo Double
myPerson es de tipo Person
myShort es de tipo Short

Si ya conoces el tipo de la variable y deseas realizar una comparación, puedes usar el operador de comparación de tipos instanceof
    String myString = "Hola";
    double myDouble = 0;
    Person myPerson = new Person();

    if(myString instanceof String){
        System.out.println("Es de tipo String");
    }else{
        System.out.println("No es de tipo String");
    }

    if((Object)myDouble instanceof Double){
        System.out.println("Es de tipo Double");
    }else{
        System.out.println("No es de tipo Double");
    }

    if(myPerson instanceof Person){
        System.out.println("Es de tipo Person");
    }else{
        System.out.println("No es de tipo Person");
    }

