Rumah Kewangan Peribadi Cara Membuat Kelas Dalam di Jawa - patung

Cara Membuat Kelas Dalam di Jawa - patung

Video: NET5 - Pengrajin gendang 2024

Video: NET5 - Pengrajin gendang 2024
Anonim

Inilah berita besar! Di Jawa, anda boleh menentukan kelas di dalam kelas lain! Di sini, kelas GameFrame mengandungi kelas bernama MyActionListener .

java import. awt. FlowLayout;

java import. awt. acara. ActionEvent;

java import. awt. acara. ActionListener;

java import. util. Rawak;

javax import. hayun. JButton;

javax import. hayun. JFrame;

javax import. hayun. JLabel;

javax import. hayun. JTextField;

GameFrame kelas memanjangkan JFrame {

private static final serial serialVersionUID = 1L;

int randomNumber = new Random (). nextInt (10) + 1;

int numGuesses = 0;

JTextField textField = JTextField baru (5);

JButton button = new JButton ("Guess");

JLabel label = new JLabel (numGuesses + "guesses");

GameFrame umum () {

setDefaultCloseOperation (JFrame EXIT_ON_CLOSE);

setLayout (baru FlowLayout ());

add (textField);

tambahkan (butang);

tambahkan (label); Butang

. addActionListener (MyActionListener baru () );

pek ();

setVisible (true);

}

kelas MyActionListener menerapkan ActionListener { @Override

public void actionPerformed (ActionEvent e) {

String textFieldText =

textField . getText (); jika (Integer parseInt (textFieldText) == randomNumber) {

butang. setEnabled (false);

textField. setText (textField. getText () + "Yes!");

textField. setEnabled (false);

} else {

textField. setText ("");

textField. requestFocus ();

}

numGuesses ++;

String guessWord = (numGuesses == 1)? "Guess": "guesses"; Label

. setText (numGuesses + guessWord);

}

}

}

Kelas

MyActionListener di atas adalah kelas dalam. Kelas dalam adalah banyak seperti mana-mana kelas lain. Tetapi dalam kod kelas dalaman, anda boleh merujuk kepada medan kelas yang melampirkan. Sebagai contoh, beberapa kenyataan di dalam MyActionListener menggunakan nama textField , dan textField ditakrifkan dalam kelas GameFrame Perhatikan bahawa kod di atas menggunakan kelas MyActionListener

sekali sahaja. (Penggunaan hanya dalam panggilan ke butang addActionListener .) Jadi, adakah anda benar-benar memerlukan nama untuk sesuatu yang digunakan sekali sahaja? Tidak, anda tidak. Anda boleh menggantikan keseluruhan definisi kelas dalam dalam panggilan ke butang.addActionListener . Apabila anda melakukan ini, anda mempunyai kelas dalaman tanpa nama. Inilah cara ia berfungsi. java import. awt. FlowLayout; java import. awt. acara. ActionEvent;

java import. awt. acara. ActionListener;

java import. util. Rawak;

javax import. hayun. JButton;

javax import. hayun. JFrame;

javax import. hayun. JLabel;

javax import. hayun. JTextField;

GameFrame kelas memanjangkan JFrame {

private static final serial serialVersionUID = 1L;

int randomNumber = new Random (). nextInt (10) + 1;

int numGuesses = 0;

JTextField textField = JTextField baru (5);

JButton button = new JButton ("Guess");

JLabel label = new JLabel (numGuesses + "guesses");

GameFrame umum () {

setDefaultCloseOperation (JFrame EXIT_ON_CLOSE);

setLayout (baru FlowLayout ());

add (textField);

tambahkan (butang);

tambahkan (label); Butang

. addActionListener (

ActionListener baru () {

@Override public void actionPerformed (ActionEvent e) {

stringFileText = textField.getText ();

if (Integer parseInt (textFieldText) = randomNumber) {

butang setEnabled (false);

textField setText (textField getText () + "Yes!");

textField setEnabled (false) textField.setText ("");

textField requestFocus ();

}

numGuesses ++;

String guessWord = (numGuesses == 1) label setText (numGuesses + guessWord);

}

}

); Pek

();

setVisible (true);

}

} Kelas dalaman adalah baik untuk perkara seperti pengendali acara, seperti kaedah

actionPerformed

. Perkara yang paling sukar tentang kelas dalaman

tanpa nama

adalah menjejaki kurungan, pendakap kerinting, dan lekukan Sesetengah nasihat yang rendah hati: mulakan dengan menulis kod tanpa kelas dalaman. Kemudian, apabila anda bosan dengan kelas Java biasa, bereksperimen dengan menukar beberapa kelas biasa anda ke kelas dalam.

Cara Membuat Kelas Dalam di Jawa - patung

Pilihan Editor

Cara Mengeksport Persembahan PowerPoint 2016 anda ke PDF - patung

Cara Mengeksport Persembahan PowerPoint 2016 anda ke PDF - patung

PDF, yang bermaksud Format Dokumen Portable , adalah format yang popular untuk menukar fail. Anda boleh menukar persembahan PowerPoint 2016 ke format PDF dengan mengikuti langkah-langkah berikut: Pilih Fail → Eksport → Buat Dokumen PDF / XPS. Klik butang Buat PDF / XPS. Ini membawa kotak dialog yang ditunjukkan di sini. Membuat dokumen PDF. Navigasi ke lokasi di mana ...

Cara Cari Word dengan Thesaurus PowerPoint 2007 - patung

Cara Cari Word dengan Thesaurus PowerPoint 2007 - patung

Jika kata yang anda perlukan persembahan PowerPoint anda berada di hujung lidah anda tetapi anda tidak boleh mengingatinya, memberikan Thesaurus PowerPoint satu pukulan. Untuk mencari sinonim untuk perkataan pada slaid PowerPoint, mulakan dengan mengklik kanan perkataan dan memilih Sinonim pada menu pintasan. Untuk mencari sinonim yang baik, ...

Bagaimana untuk menarik objek sederhana dalam PowerPoint 2013 - dummies

Bagaimana untuk menarik objek sederhana dalam PowerPoint 2013 - dummies

Untuk menarik objek pada slaid PowerPoint 2013, pertama memanggil tab Insert pada Reben. Kemudian klik butang Bentuk (terletak dalam kumpulan Ilustrasi) untuk mendedahkan galeri bentuk yang boleh anda pilih. Akhir sekali, pilih bentuk yang anda mahu menarik dari galeri Bentuk. Simpan petunjuk ini untuk memastikan ...

Pilihan Editor

Cara Memindahkan Wang Antara Akaun Bank di QuickBooks 2011 - dummies

Cara Memindahkan Wang Antara Akaun Bank di QuickBooks 2011 - dummies

Menu Perbankan dalam QuickBooks 2011 membekalkan arahan yang berguna untuk memindahkan wang antara akaun bank. Hanya pilih Perbankan → Dana Pemindahan, dan QuickBooks memaparkan Dana Pemindahan Antara tetingkap Akaun. Ikuti langkah berikut untuk menggunakan Dana Pemindahan Antara tetingkap Akaun: Gunakan medan Tarikh untuk mengenal pasti tarikh pemindahan. Anda boleh memasukkan tarikh dalam ...

Bagaimana Membekalkan Nombor-nombor yang Hilang untuk Muktamadkan Carta Akaun dalam QuickBooks 2016

Bagaimana Membekalkan Nombor-nombor yang Hilang untuk Muktamadkan Carta Akaun dalam QuickBooks 2016

Tugas terakhir anda untuk memuktamadkan Carta Akaun adalah memasukkan jumlah baki percubaan ke dalam QuickBooks 2016. Untuk melaksanakan tugas ini, anda perlu mempunyai baki percubaan yang disediakan pada tarikh penukaran. Ikuti langkah berikut: Pilih Entri Syarikat → Buat Entri Jurnal Umum atau Akauntan → Buat Entri Jurnal Umum. Memaparkan QuickBooks ...

Cara untuk Mengirim Arahan Perbankan Elektronik dengan QuickBooks 2015 - patung

Cara untuk Mengirim Arahan Perbankan Elektronik dengan QuickBooks 2015 - patung

Anda boleh melakukan semua perbankan elektronik anda dengan QuickBooks. Selepas anda menerangkan pembayaran dalam talian dan pemindahan akaun yang anda mahu membuat QuickBooks, anda menghantar maklumat tersebut ke bank. Untuk berbuat demikian, ikuti langkah berikut:

Pilihan Editor

Menambahkan Carta Excel ke Dokumen Word 2007 - dummies

Menambahkan Carta Excel ke Dokumen Word 2007 - dummies

Apabila anda memasukkan carta dalam Word, Excel dimulakan secara automatik, dan data yang anda carta diletakkan dalam buku kerja Excel. Bagaimanapun, buku kerja Excel itu bukan? t disimpan sebagai dokumen berasingan. Sebaliknya, carta dan lembaran kerja buku kerja disimpan di dalam dokumen Word. Prosedur berikut menunjukkan bagaimana untuk memasukkan carta ...

Mengubah Format Seksyen dalam Dokumen Word 2007 - dummies

Mengubah Format Seksyen dalam Dokumen Word 2007 - dummies

Satu bahagian dalam Word 2007 adalah sebahagian dokumen yang mengandungi pemformatan halaman sendiri. Dengan bahagian, anda boleh mengarahkan arahan pemformatan halaman untuk hanya mempengaruhi seksyen dan bukannya merangkumi keseluruhan dokumen. Dengan setiap bahagian berasingan dari yang lain, dokumen boleh mempunyai pelbagai format. Dalam angka pertama ini, dokumen tersebut mempunyai ...