Rumah  >  Soal Jawab  >  teks badan

java - Bagaimana untuk memanggil sekeping kod secara lalai sebelum memanggil kaedah statik?

Saya kini mempunyai kelas alat dengan kaedah statik di dalamnya, khusus untuk panggilan luaran.
Sekarang saya berharap sebelum setiap panggilan ke kaedah statik ini, kaedah atau blok kod yang menetapkan parameter lalai dipanggil.
Sama seperti menambah blok kod statik, tetapi blok kod statik hanya akan dilaksanakan sekali apabila kelas dimulakan, dan bukannya dilaksanakan setiap kali kaedah statik dipanggil, yang tidak memenuhi keperluan saya.

Penyelesaian asas adalah untuk menambah kaedah statik ke kelas alat ini dan membuat tetapan yang saya mahu di dalamnya, tetapi dalam kes ini saya perlu menambah pernyataan untuk memanggil kaedah ini dalam semua kaedah statik lain, kerana statik saya di sini Terdapat banyak kaedah , dah lebih 30, dan akan ada lagi, jadi nak malas nak tanya ada cara nak selesaikan?

Hmm. . Sebagai penjelasan tambahan, rangka kerja projek saya adalah berdasarkan mvc musim bunga Selepas membaca AOP dalam ulasan, saya pergi ke Baidu dan mendapati ia mungkin dapat memenuhi keperluan saya.
Jika ia hanya kod java tulen, sukar untuk saya menyelesaikan keperluan saya walaupun saya memikirkannya.

淡淡烟草味淡淡烟草味2664 hari yang lalu858

membalas semua(8)saya akan balas

  • 伊谢尔伦

    伊谢尔伦2017-06-12 09:27:34

    ....saya akan bagi jawapan dara SF,
    Jangan fikir, tidak...

    balas
    0
  • ringa_lee

    ringa_lee2017-06-12 09:27:34

    aop Saya benar-benar tidak tahu bagaimana untuk menjawab soalan anda

    balas
    0
  • typecho

    typecho2017-06-12 09:27:34

    AOP

    balas
    0
  • 大家讲道理

    大家讲道理2017-06-12 09:27:34

    Jawapan perawan SF saya juga diberikan kepada anda, mari cari penyelesaian lain

    balas
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-06-12 09:27:34

    Anda tidak sepatutnya menggunakan statik
    Jika ia adalah singleton dari awal,
    ia boleh dimulakan,

    Walaupun statik boleh mentakrifkan blok yang dilaksanakan apabila kelas dimuatkan,
    tetapi ia secara amnya tidak berkenaan,

    balas
    0
  • 滿天的星座

    滿天的星座2017-06-12 09:27:34

    Walaupun ia juga boleh dilaksanakan menggunakan kelas terbitan, ia hanya akan menyusahkan dan tidak memenuhi matlamat kemudahan dan kelajuan subjek.
    Berbanding dengan pelbagai kaedah, adalah lebih pantas untuk menambah barisan kod pada setiap kaedah statik.
    Cukup salin dan tampal soalan, ia akan menjadi cepat.

    balas
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-12 09:27:34

    Gunakan ungkapan biasa untuk memadankan permulaan setiap kaedah, dan kemudian masukkan kaedah yang anda mahukan

    balas
    0
  • 三叔

    三叔2017-06-12 09:27:34

    Hanya tambahkan panggilan balik pada parameter kaedah Sebagai contoh, ia pada asalnya ditulis seperti ini: public static void doSomeThing(Object args1)
    Sekarang ia ditulis seperti ini

    public static void doSomeThing(Object args1,MyCallback callback){
        callback.execute(theargs...);
        //do other things...
    }

    balas
    0
  • Batalbalas