¿Cómo convertir decimales a fracciones?

Lo que necesito para convertir decimal a fracciones. Es fácil de convertir a 10 pies.

1.5 => 15/10

Esto se puede hacer a través de este código:

public class Rational {

    private int num, denom;

    public Rational(double d) {
        String s = String.valueOf(d);
        int digitsDec = s.length() - 1 - s.indexOf('.');
        int denom = 1;
        for (int i = 0; i < digitsDec; i++) {
            d *= 10;    
            denom *= 10;
        }

        int num = (int) Math.round(d);
        this.num = num;
        this.denom = denom;
    }

    public Rational(int num, int denom) {
        this.num = num;
        this.denom = denom;
    }

    public String toString() {
        return String.valueOf(num) + "/" + String.valueOf(denom);
    }

    public static void main(String[] args) {
        System.out.println(new Rational(1.5));
    }
}

Pero lo que quiero es

1.5 => 3/2

y no entiendo cómo proceder. Mi pregunta no es una duplicación. Porque otra pregunta relacionada es C #. Esto es java

Respuestas a la pregunta(8)

Su respuesta a la pregunta