第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

如果想使用Scanner工具,我的代碼如何繼續(xù)優(yōu)化?

//Shape父類
public?abstract?class?Shape?{
	public?float?a;
	public?float?b;
	public?float?r;

	public?abstract?void?C();

	public?abstract?void?S();

	public?Shape(float?a,?float?b,?float?r)?{
		this.a?=?a;
		this.b?=?b;
		this.r?=?r;
	}

}
//矩形子類
public?class?Rectangle?extends?Shape?{

	public?void?C()?{
		System.out.println("矩形的周長為:"+(a+b)*2);
	}

	public?void?S()?{
		System.out.println("矩形的面積為:"+a*b);

	}
	public?Rectangle(float?a,float?b,float?r)?{
		super(a,b,r);
	}

}
//圓形子類
public?class?Circle?extends?Shape?{


	public?void?C()?{
		System.out.println("圓形的周長為:"+3.14*2*r);

	}

	public?void?S()?{
		System.out.println("圓形的面積為:"+3.14*r*r);

	}
	public?Circle(float?a,float?b,float?r)?{
		super(a,b,r);
	}

}
//輸出
import?java.util.Scanner;

public?class?Result?{

	public?static?void?main(String[]?args)?{
		Scanner?input?=?new?Scanner(System.in);
		System.out.println("請輸入矩形的長度:");
		String?z?=?input.next();
		System.out.println("請輸入矩形的寬度:");
		String?x?=?input.next();
		System.out.println("請輸入圓形的半徑:");
		String?c?=?input.next();
		float?a?=?Float.parseFloat(z);
		float?b?=?Float.parseFloat(x);
		float?r?=?Float.parseFloat(c);
		Shape?rec?=?new?Rectangle(a,?b,?r);
		Shape?cir?=?new?Circle(a,?b,?r);
		rec.C();
		rec.S();
		cir.C();
		cir.S();

	}

}


正在回答

4 回答

你的輸入自己給復(fù)雜化了,輸入直接double(建議)或者float 類型的就好啊,沒必要輸入String類型,再轉(zhuǎn)化為float類型的。還有你設(shè)計的數(shù)據(jù)模型,建議在Rectangle中只設(shè)長和寬,Circle類中只設(shè)半徑,沒必要全設(shè)在父類中,還有構(gòu)造函數(shù)建議在每個子類中進(jìn)行重寫,希望能對你有所幫助

1 回復(fù) 有任何疑惑可以回復(fù)我~

package com.imooc1;


public abstract class Shape {



public abstract void ZC();

public abstract void MJ();

}

package com.imooc1;


public class Rectangle extends Shape {

public double c ;

public double k ;

public Rectangle(double c, double k) {

// TODO Auto-generated constructor stub

this.c = c;

this.k = k;

}


@Override

public void ZC() {

// TODO Auto-generated method stub

System.out.println("矩形的周長是:"+(c+k)*2);

}


@Override

public void MJ() {

// TODO Auto-generated method stub

System.out.println("矩形的面積是:"+c*k);

}


}

package com.imooc1;


public class Circle extends Shape {

public double r ;

public Circle(double r) {

// TODO Auto-generated constructor stub

this.r = r;

}


@Override

public void ZC() {

// TODO Auto-generated method stub

System.out.println("圓的周長是:"+(2*3.14*r));

}


@Override

public void MJ() {

// TODO Auto-generated method stub

System.out.println("圓的面積是:"+(3.14*r*r));

}


}

package com.imooc1;

import java.util.Scanner;

public class Test {


public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner input = new Scanner(System.in);

? ? ? ? System.out.println("請輸入矩形的長度:");

? ? ? ? double c = Double.parseDouble(input.next());

? ? ? ? System.out.println("請輸入矩形的寬度:");

? ? ? ? double k = Double.parseDouble(input.next());

? ? ? ? System.out.println("請輸入圓形的半徑:");

? ? ? ? double r = Double.parseDouble(input.next());

Shape test1 = new Rectangle(c,k);

Shape test2 = new Circle(r);

test1.ZC();

test1.MJ();

test2.ZC();

test2.MJ();

}


這是我寫的代碼 ? 你先看看 有沒有多余的 可以優(yōu)化的地方啊

0 回復(fù) 有任何疑惑可以回復(fù)我~
//優(yōu)化后的代碼
//shape父類
public?abstract?class?Shape?{
	public?abstract?void?C();

	public?abstract?void?S();

}
//矩形子類
public?class?Rectangle?extends?Shape?{
	Scanner?input?=?new?Scanner(System.in);
	double?a?=?input.nextDouble();
	double?b?=?input.nextDouble();

	public?void?C()?{
		System.out.println("矩形的周長為:"?+?(a?+?b)?*?2);
	}

	public?void?S()?{
		System.out.println("矩形的面積為:"?+?a?*?b);

	}

}
//圓形子類
public?class?Circle?extends?Shape?{
	Scanner?input?=?new?Scanner(System.in);
	double?r?=?input.nextDouble();

	public?void?C()?{
		System.out.println("圓形的周長為:"?+?Math.PI?*?2?*?r);

	}

	public?void?S()?{
		System.out.println("圓形的面積為:"?+?Math.PI?*?r?*?r);

	}

}
//輸出
public?class?Result?{

	public?static?void?main(String[]?args)?{
		Scanner?input?=?new?Scanner(System.in);
		String?Circle?=?"圓形";
		String?Rectangle?=?"矩形";
		System.out.println("請輸入你想計算的多邊形:");
		String?q?=?input.next();
		if?(q.equals(Rectangle))?{
			System.out.println("請輸入矩形的長和寬:");
			Rectangle?rec?=?new?Rectangle();
			rec.C();
			rec.S();
		}?else?if(q.equals(Circle)){
			System.out.println("請輸入圓形的半徑:");
			Circle?cir?=?new?Circle();
			cir.C();
			cir.S();
		}
	}

}


1 回復(fù) 有任何疑惑可以回復(fù)我~

希望你能把優(yōu)化后的代碼 發(fā)一下,讓我參考參考

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

不負(fù)舊時日 提問者

寫在下面了 我也不確定優(yōu)化的怎么樣 不過比起之前的的確是優(yōu)化了不少了=。= 如果你有更好的代碼 也請讓我參考參考
2017-08-05 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

如果想使用Scanner工具,我的代碼如何繼續(xù)優(yōu)化?

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號