Lớp trong java P1

Lớp là điều mà một người học lập trình java cơ bản cần phải biết đầu tiên 
Khái nim 
Chúng ta có thxem lp như mt khuôn mu (template) cđối tượng (Object). Trong đó bao gm dliu ca đối tượng (fields hay properties) và các phương thc(methods) tác động lên thành phn dliu đó gi là các phương thc ca lp. Các đối tượng được xây dng bi các lp nên được gi là các thhin ca lp (class instance).

1.Khai báo/định nghĩa lp

class <ClassName>


{
<kiu dliu> <field_1>;
<kiu dliu> <field_2>;
constructor
method_1
method_2
}
class: là tkhóa ca java
Cl
assName: là tên chúng ta đặt cho lp
field_1, field_2: các thuc tính, các biến, hay các thành phn d liu ca lp.
constructor: là sxây dng, khi to đối tượng lp.
method_1, method_2: là các phương thc/hàm thhin các thao tác xlý, tác động lên các thành phn dliu ca lp. 49

2.To đối tượng ca lp

ClassName objectName = new ClassName();

3.Thuc tính ca lp 

Vùng dliu (fields) hay thuc tính (properties) ca lp
được khai báo bên trong lp như sau:
class <ClassName>
{
// khai báo nhng thuc tính ca lp
<tin t> <kiu dliu> field1;
// …
}
Để xác định quyn truy xut ca các đối tượng khác đối vi ng dliu ca lp người ta thường dùng 3 tin tsau: 

· public: có thtruy xut ttt ccác đối tượng khác 
· private: mt lp không thtruy xut vùng private ca 1 lp khác. 
· protected: vùng protected ca 1 lp chcho phép bn thân lp đó và nhng lp dn xut tlp đó truy cp
đến.
Ví dụ:
public class xemay
{ public String nhasx;
public String model;
private float chiphisx;
protected int thoigiansx;
// so luong so cua xe may: 3, 4 so
protected int so;
// sobanhxe là biến tĩnh có giá trlà 2 trong tt c
// các thhin to ra tlp xemay 50
public static int sobanhxe = 2;
} 

Thuc tính “nhasx”, “model”có thể được truy cp đến ttt ccác đối tượng khác. Thuc tính “chiphisx” chcó thtruy cp được tcác đối tượng có kiu “xemay” Thuc tính “thoigiansx”, so có thtruy cp được tcác đối tượng có kiu “xemay” và các đối tượng ca các lp con dn xut tlp “xemay”
Lưu ý: Thông thường để an toàn cho vùng dliu ca các đối tượng người ta tránh dùng tin tpublic, mà thường chn tin tprivate để ngăn cn quyn truy cp đến vùng dliu ca mt lp tcác phương thc bên ngoài lp đó.

Hàm - Phương thc lp (Method) Hàm hay phương thc (method) trong Java là khi lnh thc hin các chc năng, các hành vi xlý ca lp lên vùng d liu.
Khai báo phương thc:
<Tin t> <kiu trv> <Tên phương thc> (<danh sách đối
s>)
{
<khi lnh>;
}
Để xác định quyn truy xut ca các đối tượng khác đối vi các phương thc ca lp người ta thường dùng các tin tsau: 

· public: phương thc có thtruy cp được tbên ngoài lp khai báo. 
· protected: có thtruy cp được tlp khai báo và nhng lp dn xut tnó. 
· private: chỉ được truy cp bên trong bn thân lp khai báo.
· static: phương thc lp dùng chung cho tt ccác th hin ca lp, có nghĩa là phương thc đó có thể được thc hin kckhi không có đối tượng ca lp cha phương thc đó. 
· final: phương thc có tin tnày không được khai báo chng các lp dn xut. 
· abstract: phương thc không cn cài đặt (không có phn source code), sẽ được hin thc trong các lp dn xut tlp này. 
· synchoronized: dùng để ngăn các tác động ca các đối tượng khác lên đối tượng đang xét trong khi đang đồng bhóa. Dùng trong lp trình miltithreads.
<kiu trv>: có thlà kiu void, kiu cơ shay mt lp.
<Tên phương thc>: đặt theo qui ước ging tên biến.
<danh sách thông s>: có thrng
Lưu ý: Thông thường trong mt lp các phương thc nên được kh ai báo dùng tkhóa public, khác vi vùng dliu thường là dùng tin tprivate vì mc đích an toàn. Nhng biến nm trong mt phương thc ca lp là các biến cc b(local) và nên được khia to sau khi khai báo.
Ví dụ:
public class xemay
{
public String nhasx;
public String model;
private float chiphisx;
protected int thoigiansx;
// so luong so cua xe may: 3, 4 so
protected int so; 52
// là biến tĩnh có giá trlà 2 trong tt c
// các thhin to ra tlp xemay
public static int sobanhxe = 2;
public float tinhgiaban()
{
return 1.5 * chiphisx;
}
}

0 nhận xét: