1

クラス インスタンスについて少し混乱しており、インターネットで特定の質問を検索しようとしましたが、答えが見つかりませんでした。

親クラスScreenと子クラスGameplayScreenとがあるとしSettingsScreenます。

メイン ゲーム クラス内の場合は、次のようにします。

Screen currentScreen = new Screen();

次に、ユーザーが画面を変更するたびに:

if (gameplay) 
    currentScreen = new GameplayScreen(); 
else 
    currentScreen = new SettingsScreen(); 

パフォーマンスを考慮すると、これは良いアプローチですか?リソースのアンロードなど、これを行うためのより良い方法はありますか?

4

1 に答える 1

2

答えは、Screen子型が保持するリソースの種類、初期化に時間がかかるかどうか、および多くのリソース (または「貴重な」リソース) を保持するかどうかによって異なります。

しかし、最も可能性の高い答えは、あなたのコードは問題なく、画面が変わったときに新しいオブジェクトを作成することについて心配する必要はない (ガベージ コレクターに古いものを処理させる) というものです。

于 2012-06-03T11:39:00.497 に答える