簡體   English   中英

Class.newInstance()如何使用方法?

[英]Class.newInstance() how to use a method?

我創建了一個抽象類,如下所示:

abstract class Chance
{

   public void setTeams(SportEvent aSportEvent)
   {
      firstTeam = aSportEvent.getFirstTeam();
      secondTeam = aSportEvent.getSecondTeam();
   }


   private int totalPlayedGames()
   {
      int playedAtHome = firstTeam.getHomePlayedGames();
      int playedAway = secondTeam.getAwayPlayedGames();
      int playedGames = playedAtHome + playedAway; 
      return playedGames;
   }


   private int totalScoredGoals()
   {
      int homeScoredGoals = firstTeam.getHomeScoredGoals();
      int awayScoredGoals = secondTeam.getAwayScoredGoals();
      int scoredGoals = homeScoredGoals + awayScoredGoals; 
      return scoredGoals;
   }

   abstract double getChance()

   Team firstTeam;
   Team secondTeam; 
}

然后,當然,我有幾個使用getChance()方法的類...

現在,我想創建一個類,在其中可以獲取這些新類的getChance()結果。 我想使用類似:

Class aClass = Class.forName(chanceClass....);
Object obj = aClass.newInstance();

現在我想使用'getChance()'方法。

我該怎么做?

您可以簡單地將其轉換為:

Chance obj = (Chance) aClass.newInstance();
double d = obj.getChance();

不強制轉換:

Class<? extends Chance> aClass = Class.forName(chanceClass....).asSubclass(Chance.class); 
Chance obj = aClass.newInstance();
double d = obj.getChance();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM