Memulai dengan Java jauh lebih sederhana dari yang saya kira. Sejauh ini, saya sudah memahami struktur sintaksis dasar Java. Tapi saya tahu bahwa studi mendalam tentang bahasa apa pun memerlukan akumulasi waktu dan latihan.
Applet adalah kode yang ditulis dalam Java yang dapat dijalankan di sisi browser. Perbedaan yang jelas antara itu dan aplikasi terletak pada metode eksekusinya Misalnya program C mulai dijalankan dari program main(), sedangkan Applet lebih rumit. Saya tidak tahu persis seberapa rumitnya, tapi lambat laun saya akan memahaminya. Properti penting tentang Applet adalah saya dapat meneruskan nilai dalam HTML sebagai parameter ke Applet (mendapatkan nilai parameter melalui getParameter()). Dengan cara ini, untuk menghasilkan efek yang berbeda, kita tidak perlu mengkompilasi ulang program Java , tetapi cukup ubah saja nilai parameter HTML. Karena kode HTML juga dapat dibuat secara dinamis, saya dapat mengontrol efek dinamis halaman web sesuai keinginan.
Ada tiga metode utama dalam siklus hidup Applet: init, start, dan stop.
init(): Bertanggung jawab untuk inisialisasi Applet. Metode ini hanya dijalankan sekali selama seluruh siklus hidup Applet. Ini sama dengan kejadian OnCreate() di Delphi
. secara otomatis akan Memanggil start(), dan setiap kali jendela saat ini diaktifkan kembali, metode ini akan dipanggil, yang mirip dengan acara OnShow() di Delphi.
stop(): Metode ini dipanggil setelah pengguna meninggalkan halaman tempat Applet berada. Hal ini memungkinkan Anda untuk menghentikan pekerjaan beberapa sumber daya ketika pengguna tidak memperhatikan Applet agar tidak mempengaruhi efisiensi operasi sistem. Dan kita tidak perlu menghapus metode ini secara artifisial. Metode ini mirip dengan OnClose(). acara di Delphi.
Berikut ini adalah nama file HelloWorld versi Applet
: HelloWorld.java
import java.applet.Applet;
import java.awt.Graphics;
kelas publik HelloWorld memperluas Applet
{
Judul string;
kekosongan publik init(){
title="Halo Dunia";
}
cat void publik (Gambar g)
{
g.drawString(judul, 50, 20);
}
}
Kita dapat melihat bahwa tidak ada fungsi utama dalam program ini, jadi bagaimana cara menjalankannya? Karena Applet berjalan di lingkungan browser, kita perlu memanggilnya dalam file HTML Tag Applet>, pertama kita buat file HTML test.htm, source codenya sebagai berikut:
<html>
<tubuh>
Inilah applet pertama saya:
<br>
<kode applet=HelloWorld.kelas lebar=650 tinggi=500>
</applet>
</APPLET>
</tubuh>
</html>
Letakkan file ini di direktori yang sama dengan HelloWorld.java, lalu kompilasi HelloWorld.java, klik test.htm untuk membukanya secara langsung, dan Anda dapat melihat bahwa program Applet dimulai. Atau gunakan perintah AppletViewer Tes AppletViewer. htm Anda juga dapat menjalankan Applet secara langsung tanpa browser.
Program berikut dapat membantu kita lebih memahami bagaimana Java Applet memanggil metode yang kami perkenalkan di atas sepanjang siklus hidupnya.
Nama file: StartStop.java
import java.awt.*;
import java.applet.*;
StartStop kelas publik memperluas Applet
{
pesan StringBuffer;
kekosongan publik init()
{
pesan=new StringBuffer("Ini sudah selesai...");
}
kekosongan publik mulai()
{
message.append("Dimulai...");
}
penghentian kekosongan publik()
{
message.append("Berhenti...");
}
cat void publik (Grafik g)
{
g.drawString(pesan.toString(), 150, 50);
}
}
Cara pengoperasiannya sama seperti di atas. (Untuk program ini, silakan lihat <Tutorial Ringkas Java> Industri Mesin)
Berbeda dengan bahasa C, implementasi GUI jauh lebih mudah menggunakan Java. Karena ini adalah bahasa yang murni berorientasi objek, AWT Java menyediakan berbagai elemen antarmuka untuk kita panggil, seperti komponen di Delphi. Berikut ini adalah tabel perbandingan objek GUI di Java dan komponen terkait di Delphi.
Delphi Jawa
Tombol TTombol
Kanvas TCanvas
Kotak centang TKotak centang
Kotak CentangGrup TRadioGroup
Pilihan TComboBox
Label TLabel
Bidang Teks TEdit
TextArea TMemo
Namun, JDK bukanlah alat pengembangan visual RAD (pengembangan aplikasi cepat). Penggunaan objek tidak hanya dapat dilakukan dengan menyeret dan menggeser seperti Delphi, tetapi mengharuskan kita menulis kode panggilan membuat elemen ditempatkan di antarmuka sesuai dengan kebutuhan saya? Ketika tidak banyak elemen, saya dapat membiarkan Java secara otomatis melakukan tata letak (Tata Letak). aplikasi, Anda perlu Menggunakan panel (Panel). Panel juga memiliki komponen yang sesuai (TPanel) di Delphi, tetapi ini terutama digunakan untuk mengelompokkan antarmuka dan membuat tata letak kasar. Penentuan posisi yang tepat memerlukan penyesuaian manual oleh pengembang Java, hanya bisa digunakan Panel digunakan untuk memposisikannya, itu kekurangannya.
Setelah memulai, saatnya mendalami konsep objek.
Asumsikan bahwa tipe data khusus yang disebut Tanggal dibuat di Java sebagai berikut
Tanggal kelas publik{
ke hari;
ke dalam bulan;
tahun ke dalam;
}
Jadi untuk tiga pernyataan berikut yang mendeklarasikan variabel, apakah ada perbedaan ketika Java mengalokasikan memori untuk variabel tersebut?
(1) ke dalam saya;
(2) Tanggal lahir saya;
(3) Date mybirth=new Date();
Jelas ada, dan alokasinya adalah sebagai berikut:
(1) Java secara otomatis mengalokasikan memori variabel integer untuk integer i, biasanya dua byte
(2) Java mendeklarasikan kelas Date Variabel instan mybirth dialokasikan dengan ruang penyimpanan, tetapi yang disimpan di ruang penyimpanan ini hanyalah referensi, atau alamat saat ini, jadi kami tidak dapat menggunakan variabel instan ini atau mereferensikannya kepada anggotanya.
(3) Java membuat variabel instan mybirth dari kelas Date, mengalokasikan ruang penyimpanan yang cukup untuk variabel anggotanya, dan akhirnya mengembalikan referensi ke ruang penyimpanan ini, yaitu mengembalikan alamat pertama dari ruang penyimpanan ini, dan kemudian meneruskan mybirth , artinya, alamat pertama ini digunakan untuk mengakses setiap anggota variabel instan ini, seperti kelahiranku.hari, kelahiranku.bulan, kelahiranku.tahun.
Ketika kita mendeklarasikan variabel bertipe data dasar (seperti boolean, byte, short, char, int, long, flat, double), sistem akan secara otomatis mengalokasikan memori untuk variabel tersebut. Tetapi jika String atau variabel yang ditentukan pengguna dideklarasikan, sistem tidak akan segera mengalokasikan memori untuk variabel tersebut. Mengapa demikian?
Hal ini karena String dan variabel yang ditentukan pengguna termasuk dalam kategori kelas A yang dideklarasikan sebagai kelas Variabel tersebut bukan lagi sepotong data, tetapi referensi ke data tersebut. Artinya, mybirth dapat dianggap sebagai penunjuk ke sebuah instance kelas, dan alamatnya disimpan di dalamnya.
Lebih dalam lagi, karena nilai variabel instan dari sebuah kelas adalah sebuah pointer, dan pointer ini menunjuk ke sebuah instance dari suatu kelas, maka kita dapat dengan jelas mendefinisikan variabel instan dari beberapa kelas dengan nama yang berbeda, dan mengarahkan semuanya ke satu instance. Misalnya:
Universitas u=Universitas baru();//Variabel instan u dari kelas Universitas ditentukan, dan ruang penyimpanan objek dialokasikan padanya
Universitas u2=u;//Variabel instan u2 juga ditentukan , dan nilai u ditetapkan padanya. Mengingat u2
, maka jelas u2dan
u sebenarnya adalah hal yang sama kecuali namanya berbeda, karena mereka menunjuk ke alamat yang sama.
Struktur data inilah yang perlu diketahui oleh seorang programmer.