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
Comparing Fields and Methods
TAILIEUCHUNG - Comparing Fields and Methods
Những lĩnh vực và phương pháp so sánh Trước tiên, hãy đậy nắp động lực ban đầu để sử dụng các phương pháp để ẩn các lĩnh vực. Xem xét các cấu trúc sau đó đại diện cho một vị trí trên một màn hình như một (X, Y) phối hợp cặp: struct ScreenPosition (công ScreenPosition (int x, int y) ( = rangeCheckedX (x); | 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 .
Việt Tiến
50
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
28
84
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 1
6
93
1
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 2
6
84
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 3
6
76
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 4
6
71
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 5
6
81
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 6
6
76
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 7
6
99
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 8
6
69
0
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 9
6
78
0
TÀI LIỆU XEM NHIỀU
Một Case Về Hematology (1)
8
461949
55
Giới thiệu :Lập trình mã nguồn mở
14
23138
64
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
10990
531
Câu hỏi và đáp án bài tập tình huống Quản trị học
14
10188
451
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
9572
106
Ebook Facts and Figures – Basic reading practice: Phần 1 – Đặng Tuấn Anh (Dịch)
249
8398
1136
Tiểu luận: Nội dung tư tưởng Hồ Chí Minh về đạo đức
16
8278
423
Mẫu đơn thông tin ứng viên ngân hàng VIB
8
7896
2234
Đề tài: Dự án kinh doanh thời trang quần áo nữ
17
6839
256
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
6145
1488
TỪ KHÓA LIÊN QUAN
Kỹ thuật lập trình
ngôn ngữ lập trình
lập trình
ngôn ngữ C#
C#
Fields and Methods
Tài liệu Ngôn ngữ lập trình
Ngôn ngữ lập trình hướng vào máy
Khái niệm ngôn ngữ lập trình
Lập trình bằng ngôn ngữ Fortran
Ngôn ngữ Fortran
Tài liệu lập trình
Thủ thuật lập trình
Ngôn ngữ UML
Đối tượng lập trình
Hướng đối tượng
Hệ thống lập trình
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
tư liệu lập trình
hướng dẫn lập trình
kĩ năng lập trình
TÀI LIỆU MỚI ĐĂNG
TƯƠNG QUAN GIỮA MÔ HỌC, GIẢI PHẪU VÀ HÌNH ẢNH CỦA CÁC KHỐI U PHẦN PHỤ
3
175
0
22-05-2024
Công nghiệp gang thép Việt Nam : Một giai đoạn phát triển và chuyển đổi chính sách mới part 5
6
205
0
22-05-2024
Đóng mới oto 8 chỗ ngồi part 9
10
127
0
22-05-2024
Giáo trình CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT - Chương 1
5
141
0
22-05-2024
Báo cáo tốt nghiệp: Vận hành và bảo dưỡng trong MPLS
92
152
3
22-05-2024
Lãi suất cơ bản, công cụ quan trọng của chính sách tiền tệ
5
120
0
22-05-2024
A Practical Guide for Health Researchers - part 7
24
115
0
22-05-2024
Báo cáo nghiên cứu nông nghiệp " Biofertiliser inoculant technology for the growth of rice in Vietnam: Developing technical infrastructure for quality assurance and village production for farmers "
12
97
0
22-05-2024
Thương hiệu sản phẩm làng nghề: Đã ít, lại thiếu tính cạnh tranh
5
125
0
22-05-2024
Báo cáo nghiên cứu khoa học " HÃY LÀM CHO HUẾ XANH HƠN VÀ ĐẸP HƠN "
6
132
0
22-05-2024
TÀI LIỆU HOT
Mẫu đơn thông tin ứng viên ngân hàng VIB
8
7896
2234
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
6145
1488
Ebook Chào con ba mẹ đã sẵn sàng
112
3789
1255
Ebook Tuyển tập đề bài và bài văn nghị luận xã hội: Phần 1
62
5426
1140
Ebook Facts and Figures – Basic reading practice: Phần 1 – Đặng Tuấn Anh (Dịch)
249
8398
1136
Giáo trình Văn hóa kinh doanh - PGS.TS. Dương Thị Liễu
561
3552
656
Giáo trình Sinh lí học trẻ em: Phần 1 - TS Lê Thanh Vân
122
3759
544
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
10990
531
Giáo trình Pháp luật đại cương: Phần 1 - NXB ĐH Sư Phạm
274
4172
523
Bài tập nhóm quản lý dự án: Dự án xây dựng quán cafe
35
4193
483
Đã 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.