Sepertinya anda masih kurang mengerti mengenai lifecycle dari object yang
anda ciptakan sendiri dan kapan method2nya dipanggil.

Pattern untuk reusable object biasanya:

- constructor minimal
- init() method dipanggil sesaat sebelum object mau digunakan, isinya set
semua fieldnya biar siap dipakai
- clear / dispose(), dipanggil setelah object digunakan, isinya bersihkan
semua fieldnya (set null)
  --> optional sih, untuk beberapa kasus gak perlu karena init() nanti juga
bersihkan semua fieldnya.

Kalau tidak punya masalah dengan performance, saya menyarankan mulai dengan
pakai yang non-reusable dulu, daripada pusing sendiri.

-Kurniady

2010/5/31 onsir salman <onsirsal...@gmail.com>

>
>
> public class Cabang extends javax.swing.JInternalFrame {
>
> private Cabang cabang=new Cabang();
> private cabangDao cabangDao = new cabangDao();
> private String status=null;
> private BigDecimal nilaiBugdet;
> private Date tgl;
> private Calendar cTransfer;
>
> public Cabang() {
> super("", true, true, true, true);
> initComponents();
> }
>
> .
> .
>
> //saya buat mthod clearClose spt ini
> private void clearClose(){
> cabangDao=null;
> status=null;
> nilaiBudget=new BigDecimal("0");
>
> }
>
>
> private void btnInputActionPerformed(java.awt.event.ActionEvent evt) {
> cabang=new Cabang();
>
> cabang=cabangDao.getByCode(txtKode.getText());
>
> }
>
>
> //mentutup frame
> private void formInternalFrameClosing(javax.swing.event.InternalFrameEvent
> evt) {
> clearClose();
> dispose();
> }
>
>
> Bagaimana cara utk membersihkan objek ketika frame di tutup ?
>
> saya sdh buat method clearClose spt itu, dimana bila frame cabang di tutup
> maka akan
> membersihkan objek dan nilai dari variable.
>
> misal spt ini frame cabang di buka utk pertama kali-->proses input data
> berhasil -->lalu saya tutup frame
> -- lalu saya buka lagi frame cabang -->pd saat input data erorr Null
>
> error ini menunjukke cabangDao.
> lalu bila di method clearClose()
> kode cabangDao=null; tidak saya tulis semua lancar saja.
>
> apaakh cara ini bagus utk menhindari error tsb
> di method clearClose(){
> tetap di tulis
> cabangDao=null;
> }
>
> dan di
> private void btnInputActionPerformed(java.awt.event.ActionEvent evt) {
> cabang=new Cabang();
> //saya tambahkan ini
> cabangDao=new CabangDao();
> cabang=cabangDao.getByCode(txtKode.getText());
> }
>
> cara ini tidak error.
>
> pertanyaanya :
> 1. bagus gak saya buat utk menciptakan objek dan variable spt itu?
> 2. bagaimana cara utk membersihkan objeck dan variable yang baik
>
>
> terima kasih
>
>
>  
>

Kirim email ke