2012-02-11 8 views
-1

私はクラスPlayerを呼び出そうとしていますが、静的メソッドをいくつか変更して800個の警告を作成し、 唯一の解決策は800の警告を修正することですか? ます。public void methodNameの(プレーヤープレイヤー){そして、それを実行します。私は次のようにメソッドにプレーヤープレイヤーをかけることなく、それを実行する必要があり :?(注意すべきいくつかのことクラスを静的にすることなくクラスを呼び出す方法

静的な方法でメソッドにアクセスするために私に言って私はすでに私がやろうとしていたコードに適用することはできませんしているコンストラクタとして、コンストラクタを使用せずに。

全体の方法は、この

public static void main(String args[]) throws Exception { 
    //args = new String[] { "true", "false", "true" }; 
    if (args.length != 3) { 
     System.err.println("USE: guimode(boolean) debug(boolean) hosted"); 
     return; 
    } 
    Config.HOSTED = Boolean.parseBoolean(args[2]); 
    Config.DEBUG = Boolean.parseBoolean(args[1]); 
    long currentTime = System.currentTimeMillis(); 
    Logger.log("Launcher", "Initiating Cache..."); 
    Cache.init(); 
    ItemEquipIds.init(); 
    Huffman.init(); 
    Logger.log("Launcher", "Initiating Data Files..."); 
    IPBanL.init(); 
    PkRank.init(); 
    TeleportLocations.initTeleportLocations(); 
    DTRank.init(); 
    MapContainersXteas.init(); 
    MapAreas.init(); 
    ObjectSpawns.init(); 
    NPCSpawns.init(); 
    NPCCombatDefinitionsL.init(); 
    NPCBonuses.init(); 
    NPCDrops.init(); 
    ItemExamines.init(); 
    ItemBonuses.init(); 
    ShopsHandler.init(); 
    NPCDefinitions.getNPCDefinitions(20); 
    Logger.log("Launcher", "Initiating Fishing Spots..."); 
    FishingSpotsHandler.init(); 
    Logger.log("Launcher", "Initiating NPC Combat Scripts..."); 
    CombatScriptsHandler.init(); 
    Logger.log("Launcher", "Initiating Dialogues..."); 
    DialogueHandler.init(); 
    Logger.log("Launcher", "Initiating Controlers..."); 
    ControlerHandler.init(); 
    Logger.log("Launcher", "Initiating Cutscenes..."); 
    CutscenesHandler.init(); 
    Logger.log("Launcher", "Initiating Friend Chats Manager..."); 
    FriendChatsManager.init(); 
    Logger.log("Launcher", "Initiating Cores Manager..."); 
    CoresManager.init(); 
    Logger.log("Launcher", "Initiating World..."); 
    World.init(); 
    Logger.log("Launcher", "Initiating Region Builder..."); 
    RegionBuilder.init(); 
    Logger.log("Launcher", "Initiating Server Channel Handler..."); 
    NPCSpawner.spawnNPCS(); 
    try { 
     ServerChannelHandler.init(); 
    } catch (ChannelException e) { 
     e.printStackTrace(); 
     Logger.log("Launcher", 
       "Failed Initiating Server Channel Handler. Shutting down..."); 
     System.exit(1); 
     return; 
    } 
    // Logger.log("Launcher", "Initiating Server Manager..."); 
    // ServerManager.main(null); 
    System.err.println("Server took " 
      + (System.currentTimeMillis() - currentTime) 
      + " miliseconds to start up."); 
    addAccountsSavingTask(); 
    addCleanMemoryTask(); 
    for (;;) 
    { 
     try { 
      Thread.sleep(10000); 
      player.sendMessage("[Server Message]: Remember to vote!"); 
      Thread.sleep(10000); 
      player.sendMessage("[<img=1>Server Message<img=1>]: Donate to Lubricant and ONLY Lubricant!"); 
      } catch (InterruptedException e) { 
      e.printStackTrace(); 
      } 
    } 
} 

はまた、私は私のコンストラクタプレーヤーを変更したり、持っていないことに注意しています何も起きていない新しいコンストラクタ(IE public Player

パブリッククラスプレイヤーは、あなたがmain()メソッドを持つクラス内のプレイヤークラスのオブジェクトを作った方法エンティティ{わから

public Player(String password) { 
    super(Config.START_PLAYER_LOCATION); 
    trampAmount = 1; 
    setHitpoints(100); 
    this.password = password; 
    appearence = new Appearence(); 
    inventory = new Inventory(); 
    equipment = new Equipment(); 
    skills = new Skills(); 
    combatDefinitions = new CombatDefinitions(); 
    prayer = new Prayer(); 
    bank = new Bank(); 
    controlerManager = new ControlerManager(); 
    musicsManager = new MusicsManager(); 
    emotesManager = new EmotesManager(); 
    friendsIgnores = new FriendsIgnores(); 
    dominionTower = new DominionTower(); 
    charges = new ChargesManager(); 
    runEnergy = 100; 
    allowChatEffects = true; 
    mouseButtons = true; 
    pouches = new int[4]; 
    killedBarrowBrothers = new boolean[6]; 
    SkillCapeCustomizer.resetSkillCapes(this); 
} 
+1

正確にあなたはプレーヤープレーヤー=新しいプレーヤー( "パスワード")を使用しています。 ? –

+0

複数のクラス。 –

+1

Playerクラスを呼び出すとどういう意味ですか?あなたはクラスだけを呼び出すことはできません。問題を明確に示すコードを教えてください。上記のコードには、実際の問題に関連していないような多くのコードが含まれています。また、それはプレーヤーの宣言と初期化のような部品が欠けている。 – Eelke

答えて

1

ないが、拡張:{}) は、ここに私のプレーヤーのコンストラクタです。 mainメソッドのスコープ外のオブジェクトを作成しているので、静的コンテキストから非静的変数を使用することはできません。このために、静的キーワードをPlayer変数に追加して動作させることができます。コードスニペットをチェックして、あなたのケースでも使用できることを確認してください。あなたはmainメソッドを持つクラスの、良いSSCCEを提供する必要がありそうで

public class StaticVariable 
{ 
    static One one = new One("New Password"); // This is what I mean, you can do. 

    public static void main(String... args) 
    {  
     StaticVariable.one.callMe(); // That's how you will call your methods now. 
    } 
} 

class One 
{ 
    String password; 

    public One(String p) 
    { 
     password = p; 
    } 

    public void callMe() 
    { 
     System.out.println("I am callMe method of class One."); 
     System.out.println(password); 
    } 
} 

関連する問題