01/10/2018, 08:17
Get / Set field và property trong C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication8
{
class Book
{
string maSach;
string tenSach;
int giaSach;
int giamGia;
public string MaSach
{
get
{
return maSach;
}
set
{
maSach = value;
}
}
public string TenSach
{
get
{
return tenSach;
}
set
{
if (value == "")
{
value = null;
}
tenSach = value;
}
}
public int GiaSach
{
get
{
return giaSach;
}
set
{
if (value > 0 )
{
giaSach = value ;
}
giaSach = 0;
}
}
public int GiamGia
{
get
{
return giamGia;
}
set
{
giamGia = value;
}
}
public Book()
{
}
public Book(string maSach, string tenSach)
{
this.MaSach = maSach;
this.TenSach = tenSach;
}
public Book(string maSach, string tenSach, int giaSach, int giamGia)
{
this.MaSach = maSach;
this.TenSach = tenSach;
this.GiaSach = giaSach;
this.GiamGia = giamGia;
}
public int TinhGiaBan()
{
return GiaSach - GiamGia;
}
ngay tại phần
public Book(string maSach, string tenSach, int giaSach, int giamGia)
{
this.MaSach = maSach;
this.TenSach = tenSach;
this.GiaSach = giaSach;
this.GiamGia = giamGia;
}
khi em đổi là
public Book(string maSach, string tenSach, int giaSach, int giamGia)
{
this.maSach = maSach;
this.tenSach = tenSach;
this.giaSach = giaSach;
this.giamGia = giamGia;
}
thì các điệu kiện em để ở thuộc tính không hoạt động được là tại sao ạ em cảm ơn
Bài liên quan
Bởi vì bạn set trực tiếp vào field chứ có qua Property đâu mà nó chạy đoạn if đó ???
Như kiểu từ tuyến xã chuyển luôn lên tỉnh thì thằng huyện làm sao biết.
dạ em cảm ơn ạ vậy cái if trong property khi set phải set qua property đúng không ạ
Khi bạn set giá trị cho Property (cái có get,set bên trong) thì khối set sẽ chạy. value trong khối set chính là giá trị gán cho property.
Khi bạn gán cái gì đó bằng property thì khối get của property sẽ chạy.
hay qua em hieu rồi cảm ơn nhé :))