📄 quadimpl2.java
字号:
package cha4;
public class QuadImpl2 implements QuadInterface {
//类属性,属性前没有private
private float a,b,c;
QuadImpl2(float newA, float newB , float newC ) //构造方法
{ a=newA;
b=newB;
c=newC;
rb24ac= b24ac(); //内部方法直接调用内部方法
}
double rb24ac;
private double x1,x2;
public double b24ac()
{ return b*b-4*a*c; //内部方法直接访问类的属性
}
public void x1x2()
{
if (rb24ac==0) //内部属性直接访问
{ x1=-b/(2*a);
x2=x1;
//System.out.println("x1=x2="+x1);
}
else
if (rb24ac>0)
{ x1=(-b-Math.sqrt(rb24ac))/(2*a); //内部方法直接访问该类属性
x2=(-b+Math.sqrt(rb24ac))/(2*a);
}
}
public void displayX1X2()
{if (b24ac()>=0){
System.out.println("x1="+x1);
System.out.println("x2="+x2);
}
else
System.out.println("No real Roots!");
}
//不同的类实现同一接口,利用这种接口不同的实现类可以验证软件实现的正确性。
public static void main(String args[]) //静态方法main()
{ double[] abc={1,2,1};
//构造同一接口的不同实现类的对象q1
QuadInterface q1= new QuadImpl1 (abc);
//构造同一接口的不同实现类的对象q2
QuadInterface q2= new QuadImpl2 (1,2,1);
q1.x1x2(); //类QuadImpl1对象求根
q1.displayX1X2();
q2.x1x2(); //类QuadImpl12象求根
q2.displayX1X2();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -