/* bài viết thuộc loạt bài hướng dẫn trong "khóa học lập trình java miễn phí"
trên diễn đàn android.vn, bạn có thể vào đây đọc
để hiểu hơn về khóa học và tham gia ngay cùng mọi người */
sau bài viết này, các bạn sẽ có cái nhìn toàn diện hơn về class trong 1 project java (interface, abstract class tương tự), các bạn áp dụng để viết code sao cho dễ nhìn dễ hiểu và dễ quản lý. chọn cách viết nào cho phù hợp với từng bài tập, từng project. sau bài này, các bạn cũng sẽ hiểu hơn về lập trình hướng đối tượng trong java.
1, bài có 1 class, dùng class chứa hàm main!
khi bạn lên mạng, tìm code, bạn sẽ thấy người ta thường dùng cách này
thường có 1 class duy nhất. cách viết này thường dùng để chia sẻ thuật toán, cú pháp hoặc giới thiệu các phương thức của 1 đối tượng trong thư viện nào đó.
ví dụ 1: một bài tập quản lý sinh viên nhỏ:
Mã nguồn PHP:
[color=#000000]
package sinh[/color][color=#007700].[/color][color=#0000bb]vien[/color][color=#007700]; public class [/color][color=#0000bb]sinhvien [/color][color=#007700]{ public [/color][color=#0000bb]string hoten[/color][color=#007700]; public [/color][color=#0000bb]int namsinh[/color][color=#007700]; public [/color][color=#0000bb]float toan[/color][color=#007700], [/color][color=#0000bb]ly[/color][color=#007700], [/color][color=#0000bb]hoa[/color][color=#007700]; public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]sinhvien a [/color][color=#007700]= new [/color][color=#0000bb]sinhvien[/color][color=#007700](); [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoten [/color][color=#007700]= [/color][color=#dd0000]"vũ văn a"[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]namsinh [/color][color=#007700]= [/color][color=#0000bb]1992[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]toan [/color][color=#007700]= [/color][color=#0000bb]10.0f[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]ly [/color][color=#007700]= [/color][color=#0000bb]9.0f[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoa [/color][color=#007700]= [/color][color=#0000bb]9.5f[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"điểm tb là: " [/color][color=#007700]+ (float) ([/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]toan [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]ly [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoa[/color][color=#007700]) / [/color][color=#0000bb]3[/color][color=#007700]); }}[/color]
khi làm bài tập hoặc làm các project, ít khi dùng cách này, nó không hay cho việc quản lý, giới thiệu để các bạn có thể đọc và hiểu nếu như gặp phải những bài chia sẻ dạng trên!
2, class đặt cùng file class chứa hàm main
vị trí đặt ngoài class chứa chương trình chính, ở bài trước, mình có viết ví dụ theo cách này! nó chỉ thích hợp với bài ít class, class ít thuộc tính và phương thức. nếu bài có nhiều class, mỗi class có nhiều phương thức, điều này cũng không tốt, sẽ rất khó nhìn và quản lý cũng như nâng cấp!
ví dụ 2: nội dung bài như ở vd1, bổ sung thêm class giảng viên, nhưng sẽ bố trí lại vị trí class như sau:
Mã nguồn PHP:
[color=#000000]
package truong[/color][color=#007700].[/color][color=#0000bb]hoc[/color][color=#007700]; class [/color][color=#0000bb]sinhvien [/color][color=#007700]{ public [/color][color=#0000bb]string hoten[/color][color=#007700]; public [/color][color=#0000bb]int namsinh[/color][color=#007700]; public [/color][color=#0000bb]float toan[/color][color=#007700], [/color][color=#0000bb]ly[/color][color=#007700], [/color][color=#0000bb]hoa[/color][color=#007700];} class [/color][color=#0000bb]giangvien [/color][color=#007700]{ public [/color][color=#0000bb]string hoten[/color][color=#007700]; public [/color][color=#0000bb]int namsinh[/color][color=#007700]; public [/color][color=#0000bb]string mon[/color][color=#007700]; public [/color][color=#0000bb]int luong[/color][color=#007700];} public class [/color][color=#0000bb]main [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]sinhvien a [/color][color=#007700]= new [/color][color=#0000bb]sinhvien[/color][color=#007700](); [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoten [/color][color=#007700]= [/color][color=#dd0000]"vũ văn a"[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]namsinh [/color][color=#007700]= [/color][color=#0000bb]1992[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]toan [/color][color=#007700]= [/color][color=#0000bb]10.0f[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]ly [/color][color=#007700]= [/color][color=#0000bb]9.0f[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoa [/color][color=#007700]= [/color][color=#0000bb]9.5f[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"điểm tb là: " [/color][color=#007700]+ (float) ([/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]toan [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]ly [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoa[/color][color=#007700]) / [/color][color=#0000bb]3[/color][color=#007700]); [/color][color=#0000bb]giangvien gv1 [/color][color=#007700]= new [/color][color=#0000bb]giangvien[/color][color=#007700](); }}[/color]
chú ý: chương trình vẫn chạy nếu bạn để các class sinhvien và giangvien ở phía cuối chương trình, chỉ cần nằm ngoài class main là được
3, mỗi class đặt riêng 1 file, cùng 1 gói (package)
cách này ở các bài tập có nhiều class, các class cùng 1 loại.
ví dụ 4: các class cùng là nhân sự của 1 trường học: sinhvien, giangvienkhoa1, giangvienkhoa2.
với bài này, chúng ta sẽ tạo project với 1 package là truong.hoc, trong
package này sẽ có 4 file như sau:
file "main.java" chứa hàm main:
Mã nguồn PHP:
[color=#000000]
package truong[/color][color=#007700].[/color][color=#0000bb]hoc[/color][color=#007700]; public class [/color][color=#0000bb]main [/color][color=#007700]{ public static [/color][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][color=#007700]) { [/color][color=#0000bb]sinhvien a [/color][color=#007700]= new [/color][color=#0000bb]sinhvien[/color][color=#007700](); [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoten [/color][color=#007700]= [/color][color=#dd0000]"vũ văn a"[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]namsinh [/color][color=#007700]= [/color][color=#0000bb]1992[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]toan [/color][color=#007700]= [/color][color=#0000bb]10.0f[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]ly [/color][color=#007700]= [/color][color=#0000bb]9.0f[/color][color=#007700]; [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoa [/color][color=#007700]= [/color][color=#0000bb]9.5f[/color][color=#007700]; [/color][color=#0000bb]system[/color][color=#007700].[/color][color=#0000bb]out[/color][color=#007700].[/color][color=#0000bb]println[/color][color=#007700]([/color][color=#dd0000]"điểm tb là: " [/color][color=#007700]+ (float) ([/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]toan [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]ly [/color][color=#007700]+ [/color][color=#0000bb]a[/color][color=#007700].[/color][color=#0000bb]hoa[/color][color=#007700]) / [/color][color=#0000bb]3[/color][color=#007700]); [/color][color=#0000bb]giangvien1 gv1 [/color][color=#007700]= new [/color][color=#0000bb]giangvien1[/color][color=#007700](); }}[/color]
file giangvien.java là 1 class, bạn tạo bằng cách nháy chuột phải vào package chọn new --> java class, nội dung như sau:
Mã nguồn PHP:
[color=#000000]
package truong[/color][color=#007700].[/color][color=#0000bb]hoc[/color][color=#007700]; class [/color][color=#0000bb]sinhvien [/color][color=#007700]{ public [/color][color=#0000bb]string hoten[/color][color=#007700]; public [/color][color=#0000bb]int namsinh[/color][color=#007700]; public [/color][color=#0000bb]float toan[/color][color=#007700], [/color][color=#0000bb]ly[/color][color=#007700], [/color][color=#0000bb]hoa[/color][color=#007700];}[/color]
file giangvien1.java:
Mã nguồn PHP:
[color=#000000]
package truong[/color][color=#007700].[/color][color=#0000bb]hoc[/color][color=#007700]; class [/color][color=#0000bb]giangvien1 [/color][color=#007700]{ public [/color][color=#0000bb]string hoten[/color][color=#007700]; public [/color][color=#0000bb]int namsinh[/color][color=#007700]; public [/color][color=#0000bb]string mon[/color][color=#007700]; public [/color][color=#0000bb]int luong[/color][color=#007700];}[/color]
file giangvien2.java:
Mã nguồn PHP:
[color=#000000]
package truong[/color][color=#007700].[/color][color=#0000bb]hoc[/color][color=#007700]; class [/color][color=#0000bb]giangvien2 [/color][color=#007700]{ public [/color][color=#0000bb]string hoten[/color][color=#007700]; public [/color][color=#0000bb]int namsinh[/color][color=#007700]; public [/color][color=#0000bb]string mon[/color][color=#007700]; public [/color][color=#0000bb]int luong[/color][color=#007700]; public [/color][color=#0000bb]string phongthuchanh[/color][color=#007700];}[/color]
nhờ vào ide, việc quản lý các class trở lên tiện lợi hơn rất nhiều!
4, các class được đặt ở nhiều package khác nhau:
với những project thực tế, sẽ có rất nhiều class khác nhau được để ở nhiều gói (package) khác nhau.
ví dụ 4: project này sẽ mở rộng từ các ví dụ trên. tạo 1 project có tên: quanlytruonghoc. trong project có 3 package: truong.hoc, nhan.su, thu.vien.sach
android.vn/attachments/untitled-png.17645/" border="0" alt="" />
code bài 4 dài mình đính kèm phía dưới, các bạn import vào ide là ok!
tham khảo video bên studyandshare
bài tập về nhà::d
đọc hiểu và code lại các ví dụ!
đọc thêm: tạo 1 đối tượng java đầu tiên của bạn
my facebook: https://www.facebook.com/tiasangmoi
bài viết đăng lên diễn đàn khác vui lòng ghi rõ nguồn: android.vn
Tổng hợp hình ảnh những mẫu mộ đá tròn đẹp nhất hiện nay. Những mẫu mộ đá hình tròn được chạm khắc bởi những hoa văn họa tiết tinh xảo, tí mỉ từ đôi bàn tay của những người nghệ nhân làng nghề đá tại...
Tổng hợp hình ảnh những mẫu mộ tròn bằng đá tự nhiên đẹp