由于你的return是放在if里面的,所以說如果不進if那就不會return,所以編譯會出錯
成都創(chuàng)新互聯(lián)公司致力于互聯(lián)網(wǎng)網(wǎng)站建設與網(wǎng)站營銷,提供網(wǎng)站建設、成都做網(wǎng)站、網(wǎng)站開發(fā)、seo優(yōu)化、網(wǎng)站排名、互聯(lián)網(wǎng)營銷、成都微信小程序、公眾號商城、等建站開發(fā),成都創(chuàng)新互聯(lián)公司網(wǎng)站建設策劃專家,為不同類型的客戶提供良好的互聯(lián)網(wǎng)應用定制解決方案,幫助客戶在新的全球化互聯(lián)網(wǎng)環(huán)境中保持優(yōu)勢。
在程序最后隨便return 一個不正常的值就可以了比如return -1
完整代碼如下
import java.util.Scanner;
public class test {
public static void main(String[] args) {
double InclassScore = Inclass();
System.out.println(InclassScore);
}
public static double Inclass() {
Scanner stdin = new Scanner(System.in);
System.out
.println("Please input how many quizzes you handed in during the class (Total 12 quizzes ) ");
double quizzes = stdin.nextDouble();
if (quizzes = 1 quizzes = 12) {
double InclassScore = (quizzes / 12) * 6;
return InclassScore;
}
if (quizzes 12) {
System.out
.println("INPUT TOO LARGE, Please input a number between 1-12");
}
if (quizzes 12) {
System.out
.println("INPUT TOO SMALL, Please input a number between 1-12");
}
return -1;
}
}
for(int counter=0;counter=students;counter++)改為for(int counter=0;counterstudents;counter++)即可。就是多了個=號而已
這個不算是簡單工廠模式啦~工廠模式的思想是將類的實例化過程交給一個專門的類來進行,雖然簡單工廠不是工廠模式,但也體現(xiàn)了這個思想
Add a = new Add();這個Add的類的實例化你還是通過new Add()實現(xiàn)的,所以根本沒有用到簡單工廠方法
將JiSuanGC這個接口改成一個類如下:
public class JiSuanGC
{
private JiSuanGC(){}
JiSuan static getJisuan(String name){
if(name.equals("add"))
return new Add();
if(name.equals("jian"))
return new jian();
if(name.equals("cheng"))
return new cheng();
if(name.equals("chu"))
return new chu();
}
}
在main函數(shù)中這樣寫
JiSuan a = JiSuanGC.getJisuan("add");
這樣就返回了一個Add()類的實例
在調用他的方法
a.JiSuan(2,2);
完整代碼:
package a;
//定義一個接口,里面有一個抽象的計算方法
public interface JiSuan
{
public int JiSuan(int x,int y);
}
//定義一個工廠,獲得計算接口類型的getJisuan方法
package a;
public class JiSuanGC{
private JiSuanGC(){}
static JiSuan getJisuan(String name){
if(name.equals("add"))
return new Add();
if(name.equals("jian"))
return new jian();
if(name.equals("cheng"))
return new cheng();
if(name.equals("chu"))
return new chu();
return null;
}
}
//實體方法實現(xiàn)了JiSuan接口,重構了計算方法
package a;
public class Add implements JiSuan
{
public int JiSuan(int x,int y)
{
return x+y;
}
}
//實體方法實現(xiàn)了JiSuan接口,重構了計算方法
package a;
public class jian implements JiSuan
{
public int JiSuan(int x,int y)
{
return x-y;
}
}
}
//實體方法實現(xiàn)了JiSuan接口,重構了計算方法
package a;
public class cheng implements JiSuan
{
public int JiSuan(int x,int y)
{
return x*y;
}
}
//實體方法實現(xiàn)了JiSuan接口,重構了計算方法
package a;
public class chu implements JiSuan
{
public int JiSuan(int x,int y)
{
return x/y;
}
}
class Main
{
public static void main(String args[])
{
JiSuan a = JiSuanGC.getJisuan("add");
//往Add方法傳兩個參數(shù),實現(xiàn)兩數(shù)相加,輸出結果為4
System.out.println(a.JiSuan(2, 2));
}
}
看別人的代碼是一種痛苦的事情,不過只要你喜歡可以把這種痛苦的經歷變成與一個陌生人的交流,看代碼首先要熟悉業(yè)務,再次通過注釋尋求,模塊功能。其實最好的方式是你通過對某一塊代碼的閱讀,進行繪制流程圖,VISIO畫起流程圖來很方便,找出數(shù)據(jù)流,再加上自己的閱讀的注釋。
在你閱讀學習的過程中,會發(fā)現(xiàn)其他coder的非常巧妙的做法,這是你應該慶幸,因為你在進步。閱讀是必須的。 --------------個人觀點僅供參考