Dalvikには、単一の.dex
ファイル(約65,536個)に含めることができるメソッドの数に関するこのよく知られた制限があります。私の質問は、継承された(オーバーライドされていない)メソッドがこの制限値に当たるかどうかです。継承されたメソッドは、AndroidのDexメソッドの制限値に当てはまりますか?
私が持っていると、物事は、コンクリートにするには:65,536メソッドの制限の目的のために
public class Foo {
public int foo() {
return 0;
}
}
public class A extends Foo { }
public class B extends Foo { }
public class C extends Foo { }
は、一つの方法を追加、または4を追加すると、このカウントしていますか? (あるいは、私は、物事を論理的に結論づけるために、java.lang.Object
が12のメソッドを持っていることを考慮すると、1つのメソッドまたは52のメソッドとしてカウントします)。
背景として、いくつかの共通性を持つ生成されたクラスは自明ではありませんが、メソッドの限界値にもぶつかります。そのため、それらのいくつかを抽象化することは価値がありますか?いくつかの時間を購入するために、クラス階層に分かれています。
メソッドの可視性を変更することができるので、それらのすべてを数える必要があるとは思わないでしょうか? [dex形式についてはこちらを参照](http://www.retrodev.com/android/dexformat.html)。 –
retrodevリンクは、dexファイル形式のプレリリースバージョンの悲惨な時代遅れのリバースエンジニアリングです。より信頼できる最新の情報源については、をご覧ください。 –
danfuzz
404 on dex-format.html –