java求一元二次方程

题目要求用五个get访问器,分别获取a,b,c,x1,x2的值,然后再功能初始化a,b,c,再定义print方法输出方程的根 再定义FindRoot方法求方程的根最后建立一个Test类,通过键盘读入a,b,c的值,实例化Equation类的一个对象f, 输出方程的根。
(我想请问一下我那个求方程的根是不是写错了 然后那个Test怎么写 我本来是写的 Equation e=new Equation(); 但是感觉跟题目不符)
(这个不能用Scanner 来读书 要自己赋值给a,b,c 我就是卡在这儿了不知道怎样通过键盘读入a,b,c的值)
class Equation{
private double a;
private double b;
private double c;
private double x1;
private double x2;

    public double getA(){
        return a;
    }
    public double getB(){
        return b;
    }
    public double getC(){
        return c;
    }
    public double gerX1(){
        return x1;
    }
    public double getX2(){
        return x2;
    }
    public Equation(double a,double b,double c){
        this.a=a;
        this.b=b;
        this.c=c;
    }
    void print() {
        System.out.println(x1);
        System.out.println(x2);
    }
    public double FindRoot(double a,double b,double c){
        return b*b - 4*a*c;
    }
}
public class Test {
    public static void main(String[] args) {

一个实现,供参考:

import java.util.Scanner;

public class Test {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //从键盘依次读取三个浮点数到变量a,b,c
        double a= sc.nextDouble();
        double b = sc.nextDouble();
        double c = sc.nextDouble();
        Equation e = new Equation(a,b,c);//创建类,初始化一元二次方程的三个系数
        e.FindRoot();  //求一元二次方程的根
    }
}

class Equation{
private double a;
private double b;
private double c;
private double x1;
private double x2;

    public double getA(){
        return a;
    }
    public double getB(){
        return b;
    }
    public double getC(){
        return c;
    }
    public double gerX1(){
        return x1;
    }
    public double getX2(){
        return x2;
    }
    public Equation(double a,double b,double c){
        this.a=a;
        this.b=b;
        this.c=c;
    }
    void print() {
        System.out.println(x1);
        System.out.println(x2);
    }
    /**求一元二次方程的根
     * 参考资料:
     * https://baijiahao.baidu.com/s?id=1722370687157957463&wfr=spider&for=pc
     * http://m.chusan.com/zhongkao/66355.html
     * https://blog.csdn.net/weixin_45850035/article/details/115012183
     */
    public void FindRoot(){
        double d =  getB()*getB() - 4*getA()*getC();
        
        //根据判别式的结果计算一元二次方程的根
        if(d>0) {  //有两个根
            x1 = (-getB()+(Math.sqrt(d)))/(2*getA());
            x2 = (-getB()-(Math.sqrt(d)))/(2*getA());
            System.out.println("方程的两个根是:"+x1+","+x2+".");
            
        }else if(d==0) {  //一个根
            x1=x2=(-getB())/(2*getA());
            System.out.println("方程两个相同的根是:"+x1);
        }else {  //无根
            System.out.println("方程没有根!");
        }
            
        
        
    }
}