01/10/2018, 11:29
Hỏi về câu lệnh với new trong Java
Em không hiểu chỗ new CD()
trong lệnh st.ThemCD(new CD());
Ai giải thích giải thích giùm em vs ạ~
//Contructor chưa các biến của class CD
public CD(int maCD, int soBaiHat, String tuaCD, String caSi, double giaThanh) {
super();
this.maCD = maCD;
this.soBaiHat = soBaiHat;
this.tuaCD = tuaCD;
this.caSi = caSi;
this.giaThanh = giaThanh;
}
``
``
//Contructor có nhiệm vụ thêm 1 CD vào mảng ds
public boolean ThemCD(CD cd) {
for(int i=0 ; i < count; i++)
if(ds[i].getMaCD()==cd.getMaCD())
return false;
if(ds.length== count)
return false;
ds[count]=cd;
count++;
return true;
}
// Class chứa hàm main
{
DanhSachCD st = new DanhSachCD(10);
st.ThemCD(new CD());
CD cd = new CD(01,3,"Lam Truong","Mai Mai",8000000);
}
Bài liên quan
Code này hình như thiếu hàm rồi đúng không :v
hiểu như này nhé :
DanhSachCD st = new DanhSachCD(10);
Chỗ này là nó gọi thằng class “DanhSachCD” và đặt với tên là “st” với danh sách là 10.
Sau khi gọi thì hàm:
“st.ThemCD(new CD());”
Hàm này gọi tới thằng themCD trong class "DanhSachCD " mà mình đã đặt tên.
Sau khi gọi xong thì bắt đầu truyền giá trị vào:
CD cd = new CD(01,3,“Lam Truong”,“Mai Mai”,8000000);
Hi vọng bạn hiểu =="
trong hàm
ThemCD
có biến cd thuộc kiểu dữ liệu CD thì tại sao khi gọi nó mình phải có từ khóanew CD()
, bạn giải thích cho mình chỗ này được k?Nó tương đương thế này:
Tức là thay vì khởi tạo 1 đối tượng của lớp CD rồi truyền vào hàm thì người ta khởi tạo luôn trong dấu () của hàm cần truyền.
Hi Phan Vũ
Bạn có thể tìm một khóa học Java cơ bản hoặc đọc Java-core .