Rumah  >  Soal Jawab  >  teks badan

java - Activity中的成员变量被赋值之后,Activity被回收的时候内存才会被释放吗

Activity中的成员变量被赋值之后,Actiity被回收的时候内存才会被释放吗
java中一个类中的成员变量被赋值之后,这个类对象被回收时,类中得成员变量才会被释放内存吗

大家讲道理大家讲道理2744 hari yang lalu602

membalas semua(2)saya akan balas

  • 大家讲道理

    大家讲道理2017-04-18 10:51:07

    Masalah ini harus diklasifikasikan di bawah Java Selagi objek yang dimiliki Activity dipegang secara statik, ia akan menyebabkan keseluruhan Activity sentiasa wujud dalam ingatan.WearReference digunakan

    Berikut ialah demonstrasi kod ralat yang serupa:

    private static Context sContext;
    public static void setContext(Context context) {
        sContext = context;
    }

    Jika anda menggunakan Android Studio, IDE akan mempunyai amaran: Jangan tetapkan objek Konteks kepada pembolehubah statik.

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:51:07

    Perihalan soalan tidak jelas dan tiada ulasan negatif pada tanda baca tetapi cuba jawab:
    Objek global hanya boleh diubah suai oleh pengubah suai statik selepas pengubahsuaian statik tergolong dalam kelas ini (. class), atau dalam erti kata lain Tukar semua objek yang sepadan dengan kelas, dan bukannya kepunyaan objek tertentu Daripada derivasi ini, anda seharusnya dapat menyedari bahawa adalah salah untuk objek dikitar semula menyebabkan statik dikitar semula (. cara menggunakan objek lain yang telah dikitar semula)
    Ia disebut di sini Aktiviti, mari kita kembangkan lagi Dalam keadaan biasa, tidak mengapa menggunakan pembolehubah statik untuk merujuk objek semasa (seperti mod tunggal), tetapi dalam. reka bentuk Android, Activity bukan kelas biasa Ia mempunyai kitaran hayat sendiri dan akan dipadamkan apabila ia tamat tempoh (kerana fungsinya terlalu berkuasa dan memori yang diduduki terlalu besar merujuk kepada Aktiviti semasa untuk melaporkan kebocoran memori.

    balas
    0
  • Batalbalas