Kinh doanh - Marketing
Kinh tế quản lý
Biểu mẫu - Văn bản
Tài chính - Ngân hàng
Công nghệ thông tin
Tiếng anh ngoại ngữ
Kĩ thuật công nghệ
Khoa học tự nhiên
Khoa học xã hội
Văn hóa nghệ thuật
Sức khỏe - Y tế
Văn bản luật
Nông Lâm Ngư
Kỹ năng mềm
Luận văn - Báo cáo
Giải trí - Thư giãn
Tài liệu phổ thông
Văn mẫu
Tài liệu HOT
Tìm
Danh mục
Kinh doanh - Marketing
Kinh tế quản lý
Biểu mẫu - Văn bản
Tài chính - Ngân hàng
Công nghệ thông tin
Tiếng anh ngoại ngữ
Kĩ thuật công nghệ
Khoa học tự nhiên
Khoa học xã hội
Văn hóa nghệ thuật
Y tế sức khỏe
Văn bản luật
Nông lâm ngư
Kĩ năng mềm
Luận văn - Báo cáo
Giải trí - Thư giãn
Tài liệu phổ thông
Văn mẫu
Thông tin
Điều khoản sử dụng
Quy định bảo mật
Quy chế hoạt động
Chính sách bản quyền
0
Trang chủ
Công Nghệ Thông Tin
Kỹ thuật lập trình
Temperless Comparing Fields
TAILIEUCHUNG - Temperless Comparing Fields
Comparing Fields and Methods First, let's recap the original motivation for using methods to hide fields. Consider the following struct that represents a position on a screen as an (X, Y) coordinate pair: struct ScreenPosition { public ScreenPosition(int x, int y) { = rangeCheckedX(x); = rangeCheckedY(y); } public int X; public int Y; private static int rangeCheckedX(int x) { if (x 1280 | Comparing Fields and Methods First let s recap the original motivation for using methods to hide fields. Consider the following struct that represents a position on a screen as an X Y coordinate pair struct ScreenPosition public ScreenPosition int x int y rangeCheckedX x rangeCheckedY y public int X public int Y private static int rangeCheckedX int x if x 0 x 1280 throw new ArgumentOutOfRangeException X return x private static int rangeCheckedY int y if y 0 y 1024 throw new ArgumentOutOfRangeException Y return y The problem with this struct is that it does not follow the golden rule of encapsulation it does not keep its data private. Public data is a bad idea because its use cannot be checked and controlled. For example the ScreenPosition constructor range checks its parameters but no such check can be done on the raw access to the public fields. Sooner or later probably sooner either X or Y will stray out of its range possibly as the result of a programming error ScreenPosition origin new ScreenPosition 0 0 . int xpos -100 Oops The common way to solve this problem is to make the fields private and add an accessor method and a modifier method to respectively read and write the value of each private field. The modifier methods can then range-check the new field values because the constructor already checks the initial field values. For example here s an accessor GetX and a modifier SetX for the X field. Notice how SetX checks its parameter value struct ScreenPosition public int GetX return public void SetX int newX rangeCheckedX newX . private static int rangeCheckedX int x . private static int rangeCheckedY int y . private int x y The code now successfully enforces the range constraints which is good. However there is a price to pay for this valuable guarantee ScreenPosition no longer has a natural fieldlike syntax it uses awkward method-based syntax instead. The following example increases the value of X by 10. To do .
Nam Nhật
61
3
pdf
Báo lỗi
Trùng lắp nội dung
Văn hóa đồi trụy
Phản động
Bản quyền
File lỗi
Khác
Upload
Tải xuống
đang nạp các trang xem trước
Bấm vào đây để xem trước nội dung
Tải xuống
TÀI LIỆU LIÊN QUAN
Ngôn ngữ lập trình bậc cao
175
155
0
AutoIT Help part 94
10
127
1
AutoIT Help part 95
6
150
1
AutoIT Help part 96
7
127
1
AutoIT Help part 97
5
125
1
AutoIT Help part 98
6
127
1
AutoIT Help part 99
6
115
1
AutoIT Help part 100
6
122
1
AutoIT Help part 101
6
174
1
AutoIT Help part 102
7
122
1
TÀI LIỆU XEM NHIỀU
Một Case Về Hematology (1)
8
461887
55
Giới thiệu :Lập trình mã nguồn mở
14
22730
61
Tiểu luận: Tư tưởng Hồ Chí Minh về xây dựng nhà nước trong sạch vững mạnh
13
10912
531
Câu hỏi và đáp án bài tập tình huống Quản trị học
14
10084
447
Phân tích và làm rõ ý kiến sau: “Bài thơ Tự tình II vừa nói lên bi kịch duyên phận vừa cho thấy khát vọng sống, khát vọng hạnh phúc của Hồ Xuân Hương”
3
9541
104
Ebook Facts and Figures – Basic reading practice: Phần 1 – Đặng Tuấn Anh (Dịch)
249
8304
1127
Tiểu luận: Nội dung tư tưởng Hồ Chí Minh về đạo đức
16
8249
423
Mẫu đơn thông tin ứng viên ngân hàng VIB
8
7867
2220
Đề tài: Dự án kinh doanh thời trang quần áo nữ
17
6714
253
Giáo trình Tư tưởng Hồ Chí Minh - Mạch Quang Thắng (Dành cho bậc ĐH - Không chuyên ngành Lý luận chính trị)
152
5814
1397
TỪ KHÓA LIÊN QUAN
Kỹ thuật lập trình
thủ thuật lập trình
tư liệu lập trình
kĩ năng lập trình
mẹo lập trình
hướng dẫn lập trình
Temperless Comparing Fields
kỹ thuật lập trình
kỹ năng lập trình
bí quyết lập trình
phương pháp lập trình
kĩ thuật lập trình
AutoIT
TÀI LIỆU MỚI ĐĂNG
Giáo án mầm non chương trình đổi mới: Đề tài: Ôn xác định vị trí trên – dưới, trước- sau của đối tượng khác.
8
355
3
02-05-2024
Sáng tạo trong thuật toán và lập trình với ngôn ngữ Pascal và C# Tập 2 - Chương 4
47
249
1
02-05-2024
CẤU TẠO HẠT NHÂN NGUYÊN TỬ-ĐỘ HỤT KHỐI-NĂNG LƯỢNG LIÊN KẾT-LK RIÊNG
12
270
0
02-05-2024
extremetech Hacking BlackBerry phần 9
31
254
0
02-05-2024
beginning Ubuntu Linux phần 1
34
213
1
02-05-2024
Báo cáo nghiên cứu khoa học " KẾT QUẢ NGHIÊN CỨU BƯỚC ĐẦU VỀ THIÊN ĐỊCH CHÂN KHỚP TRÊN CÂY THANH TRÀ Ở THỪA THIÊN HUẾ "
7
176
0
02-05-2024
MySQL Database Usage & Administration PHẦN 7
37
159
0
02-05-2024
BÀI GIẢNG VỀ - MẠCH ĐIỆN II - Chương I: Phân tích mạch trong miền thời gian
38
143
0
02-05-2024
Đề tài: Tìm hiểu một số yêu cầu đặt ra với một phòng thu âm, để đảm bảo chất lượng âm thanh trong sản phẩm đa phương tiện
8
162
1
02-05-2024
GIÁO TRÌNH MÁY ĐIỆN KHÍ CỤ ĐIỆN - PHẦN I MÁY ĐIỆN - CHƯƠNG 1
46
131
2
02-05-2024
TÀI LIỆU HOT
Mẫu đơn thông tin ứng viên ngân hàng VIB
8
7867
2220
Giáo trình Tư tưởng Hồ Chí Minh - Mạch Quang Thắng (Dành cho bậc ĐH - Không chuyên ngành Lý luận chính trị)
152
5814
1397
Ebook Chào con ba mẹ đã sẵn sàng
112
3772
1233
Ebook Tuyển tập đề bài và bài văn nghị luận xã hội: Phần 1
62
5335
1136
Ebook Facts and Figures – Basic reading practice: Phần 1 – Đặng Tuấn Anh (Dịch)
249
8304
1127
Giáo trình Văn hóa kinh doanh - PGS.TS. Dương Thị Liễu
561
3519
644
Tiểu luận: Tư tưởng Hồ Chí Minh về xây dựng nhà nước trong sạch vững mạnh
13
10912
531
Giáo trình Sinh lí học trẻ em: Phần 1 - TS Lê Thanh Vân
122
3696
525
Giáo trình Pháp luật đại cương: Phần 1 - NXB ĐH Sư Phạm
274
4075
516
Bài tập nhóm quản lý dự án: Dự án xây dựng quán cafe
35
4137
480
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.