How do I define a constant variable?

To define a constant in Java, use final modifier which combined with static modifier. The final modifier indicates that the value of this field cannot change.

If you change the value of the constant, you need to recompile the class to get the current value. Other feature in Java that provide similar functionality is enumeration (a list of named constants). You can simply create an enumeration by using the enum keyword.

package org.kodejava.example.fundamental;

public class ConstantDemo {
    public static void main(String[] args) {
        int sunday = DayConstant.SUNDAY;
        System.out.println("Sunday = " + sunday);

        String dozen = MeasureConstant.DOZEN;
        System.out.println("Dozen  = " + dozen);
    }
}

class DayConstant {
    public final static int SUNDAY = 0;
    public final static int MONDAY = 1;
    public final static int TUESDAY = 2;
    public final static int WEDNESDAY = 3;
    public final static int THURSDAY = 4;
    public final static int FRIDAY = 5;
    public final static int SATURDAY = 6;
}

class MeasureConstant {
    final static String UNIT = "unit";
    final static String DOZEN = "dozen";
}

How do I calculate the length of hypotenuse?

Hypot is a mathematical function defined to calculate the length of the hypotenuse of a right-angle triangle. It was designed to avoid errors arising due to limited-precision calculations performed on computers.

From: Wikipedia

The Math.hypot(double x, double y) return the sqrt(x2+ y2) without intermediate overflow or underflow. The result will be same with this calculation Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)).

package org.kodejava.math;

public class HypotExample {
    public static void main(String[] args) {
        double number1 = 3.0d;
        double number2 = 5.0d;

        // calculate square root of total value of
        // number1 ^ 2 + number2 ^ 2
        double sqr = Math.hypot(number1, number2);

        System.out.println("Total value = " +
                (Math.pow(number1, 2) + Math.pow(number2, 2)));
        System.out.println("Square root = " + sqr);
    }
}

How do I calculate exponential function?

In mathematics, the exponential function is the function ex, where e is the number (approximately 2.718281828) such that the function ex equals its own derivative. The function f(x) = ex at the point x = 0 is equal to 1.

package org.kodejava.math;

public class ExponentExample {

    public static void main(String[] args) {
        double x = 0.0d;

        // calculates e raised to the power of x (e^x)
        double fx = Math.exp(x);

        // calculates e raised to the power of x minus 1 (e^x - 1)
        double fxm1 = Math.expm1(x);

        System.out.println("fx   = " + fx);
        System.out.println("fxm1 = " + fxm1);
    }
}

How do I get the exponent of exponential function?

The exponential function is f(x) = ex. The Math.getExponent() method is used to get the x value of the given parameter, in which the parameter is a result of exponential function calculation.

package org.kodejava.math;

public class GetExponent {
    public static void main(String[] args) {
        double fx = 1.0d;
        float fx1 = 1.0f;

        int x = Math.getExponent(fx);
        System.out.println("Exponent  = " + x);

        // argument in float
        int xf = Math.getExponent(fx1);
        System.out.println("Exponent1 = " + xf);
    }
}

How do I use the “this” keyword in Java?

Every instance method has a variable with the name this that refers to the current object for which the method is being called. You can refer to any member of the current object from within an instance method or a constructor by using this keyword.

Each time an instance method is called, the this variable is set to reference the particular class object to which it is being applied. The code in the method will then relate to the specific members of the object referred to by this keyword.

package org.kodejava.basic;

public class RemoteControl {
    private String channelName;
    private int channelNum;
    private int minVolume;
    private int maxVolume;

    RemoteControl() {
    }

    RemoteControl(String channelName, int channelNum) {
        // use "this" keyword to call another constructor in the 
        // same class
        this(channelName, channelNum, 0, 0);
    }

    RemoteControl(String channelName, int channelNum, int minVol, int maxVol) {
        this.channelName = channelName;
        this.channelNum = channelNum;
        this.minVolume = minVol;
        this.maxVolume = maxVol;
    }

    public static void main(String[] args) {
        RemoteControl remote = new RemoteControl("ATV", 10);

        // when the following line is executed, the variable in
        // changeVolume() is referring to remote object.
        remote.changeVolume(0, 25);
    }

    public void changeVolume(int x, int y) {
        this.minVolume = x;
        this.maxVolume = y;
    }
}