Trang Chủ Xã hội Truyền thông Cách Viết Phương pháp Bộ truy cập cho Ứng dụng iOS - núm vú

Cách Viết Phương pháp Bộ truy cập cho Ứng dụng iOS - núm vú

Video: Vẽ trên iPad Pro như vẽ trên giấy! 2025

Video: Vẽ trên iPad Pro như vẽ trên giấy! 2025
Anonim

Để làm cho các biến dụ có sẵn bên ngoài lớp định nghĩa của chúng một cách có kiểm soát, cách tốt nhất trong phát triển ứng dụng iOS là viết các phương thức accessor (còn gọi là > getters và setters ). Thuộc tính cung cấp một cách tuyên bố để làm như vậy thông qua việc sử dụng các tài sản chỉ thị @ tài sản và @synthesize. Bằng cách sử dụng kiểu khai báo, bạn làm cho chương trình của bạn làm điều gì đó mà không cần viết bất kỳ mã nào. Mã được viết, nhưng do trình biên dịch (mà tự động tạo các phương thức accessor), không phải do bạn.

Một ví dụ về một thuộc tính từ lớp StackOfInteger sẽ được tiếp theo. Ý tưởng là cho phép người dùng lớp này đọc con trỏ ngăn xếp mà không phơi bày biến cuối cùng và không viết bất kỳ phương pháp mới nào.

Để bắt đầu, thuộc tính phải được khai báo trong giao diện của lớp StackOfInteger. Đoạn mã dưới đây chỉ ra cách thực hiện bằng cách sử dụng chỉ thị trình biên dịch @property:

@interface StackOfInteger: NSObject {@ protected ∎ Đây là thành phần NSMutableArray * mặc định; @private int last;} @property (readonly, atomic) int stackPointer; … các phương pháp StackOfInteger khác -d

Lưu ý rằng, mặc dù từ

thuộc tính dường như có ý nghĩa gần với biến hơn đối với một phương thức, định nghĩa thuộc tính sẽ nằm trong phần mà các phương pháp được định nghĩa, nơi mà các biến dụ được xác định. Lưu ý rằng thuộc tính này có hai thuộc tính: nguyên tử và chỉ đọc.

Rõ ràng, nguyên tử có nghĩa là truy cập đồng thời an toàn được cung cấp và chỉ đọc có nghĩa là tài sản này có thể được đọc nhưng không sửa đổi.

Tiếp theo, bạn cần tổng hợp tài sản bằng cách sử dụng chỉ thị @synthesize, có nghĩa là phải tạo một biến cá thể mới cho thuộc tính hoặc một biến thể hiện có phải được liên kết với nó. Đây là cách bạn tạo một biến dụ mới có tên tương tự như thuộc tính stackPointer:

@synthesize stackPointer;
Trong ví dụ này, thuộc tính stackPointer được liên kết với biến thể cuối cùng. Hướng dẫn tổng hợp sẽ như sau:

@synthesize stackPointer = cuối cùng;
Tài sản đã sẵn sàng để sử dụng.

Bạn có thể sử dụng thuộc tính theo hai cách, như thể hiện trong chức năng chính của ví dụ:

Bạn có thể sử dụng một phương pháp accessor:

  • printf ("Count of elements% dn", [myStack stackPointer]);

    Hoặc bạn có thể sử dụng dấu chấm để làm điều tương tự, như được hiển thị ở đây:
    
  • printf ("Số lượng các phần tử sử dụng dấu chấm% dn", myStack.stackPointer);

    
    
Cái gọi là dấu chấm chỉ là viết tắt cho một cuộc gọi phương thức. Thay vì sử dụng dấu ngoặc vuông, ví dụ [phương pháp dụ] chỉ cần viết ví dụ. phương pháp.

Lưu ý rằng tên của accessor (getters và setters) theo một quy ước đặt tên. Phương thức getter là tên của thuộc tính. Vì vậy, đối với tài sản stackPointer, phương pháp getter cũng là stackPointer. Phương thức setter là tên của thuộc tính trong trường hợp lạc đà được đặt trước bởi chuỗi - tên của phương thức setter cho stackPointer là setStackPointer.

Sử dụng

trường hợp câu lạc bộ lạc đà (một chữ cái viết hoa ở giữa một thuật ngữ) khi đánh vần các phương pháp này. Vì vậy, S trong từ stack là chữ hoa trong tên của phương thức setter, mặc dù nó không được viết hoa trong tên của thuộc tính. Lưu ý rằng phương thức setter không được tạo ra cho thuộc tính này vì nó là chỉ đọc. Đã đến lúc chuyển sang các thuộc tính của thuộc tính. Tất cả đều nằm trong danh sách dưới đây cùng với những gì chúng làm:

nonatomic: Theo mặc định, các phương thức accessor được tạo ra cho các thuộc tính bao gồm khóa để đảm bảo an toàn cho việc truy cập đồng thời bằng các chương trình đa luồng. Cụ thể, hành vi mặc định là nguyên tử. Nếu bạn sử dụng thuộc tính nonatomic, không khóa được sử dụng.

  • Không có thuộc tính tên nguyên tử (hoạt động nguyên tử được thừa nhận là do thiếu thuộc tính nonatom).

    readwrite: Nếu bạn sử dụng thuộc tính này, nó có thể được viết để đọc cũng như. Cả getter và setter đều được cung cấp khi tổng hợp.

  • chỉ đọc: Trình biên dịch chỉ làm cho một trình getter có sẵn.

Cách Viết Phương pháp Bộ truy cập cho Ứng dụng iOS - núm vú

Lựa chọn của người biên tập

Mang quà Hostess - núm vú

Mang quà Hostess - núm vú

Khi bạn được mời đến nhà của người khác, cho chủ nhà một món quà nhỏ được gọi là quà tặng chủ nhà) luôn là một cử chỉ tốt đẹp, ngay cả khi lời mời không hướng dẫn bạn. Với một chai rượu vang, một cây có hoa, hoặc một món ăn ngon thì đây là một cách đáng để bạn thể hiện sự đánh giá cao của bạn và thể hiện sự xuất sắc của khách mời ...

Trao quyền cho bản thân bằng cách tốt - những con voi

Trao quyền cho bản thân bằng cách tốt - những con voi

Dù bạn gọi nó là gì - cách cư xử, lịch thiệp, nghi thức, bạn có thể kết hợp nó với sự lãnh đạo. Khi bạn dẫn đầu trong việc làm cho mọi người dễ dàng và làm cho mọi tình huống dễ chịu, bạn thể hiện sự cân bằng. Sự trầm cảm đến từ sự tự tin. Trong khí hậu ngày nay, nghi thức và tục tĩu đôi khi được coi là hổ thẹn. Những người khác xem ...

Nhận ra nỗ lực của Người cao tuổi để giấu cảm xúc khó chịu - những con voi

Nhận ra nỗ lực của Người cao tuổi để giấu cảm xúc khó chịu - những con voi

Con người thường tự bảo vệ bản thân mình khỏi nỗi đau của riêng mình cảm xúc (bao gồm lo lắng, oán giận, thất vọng và trầm cảm) bằng cách che giấu những cảm xúc này - từ bản thân và từ người khác. Họ thường làm như vậy mà không hề biết rằng họ đang làm việc đó. Người cao niên cũng không ngoại lệ. Ẩn cảm xúc không phải lúc nào cũng là điều xấu - có thể là ...

Lựa chọn của người biên tập

Mạng Cisco: Mô hình OSI Lớp 5 - Lớp Session - Dummies

Mạng Cisco: Mô hình OSI Lớp 5 - Lớp Session - Dummies

Lớp phiên của Kết nối Hệ thống Mở (Open System Interconnection) (OSI) mô tả cách thức dữ liệu được định dạng giữa các thiết bị ở hai bên của liên kết. Đây là cách thức hiệu quả trong việc duy trì kênh mở giữa hai thiết bị. Tuy nhiên, ở các mức thấp của mô hình OSI, không có kết nối vĩnh viễn, nhưng ...

Cisco Các mạng: Gói - núm vú

Cisco Các mạng: Gói - núm vú

Các bộ chứa dữ liệu được gọi là các khung trong lớp liên kết dữ liệu (Lớp 2) và các gói trong lớp mạng (lớp 3). Trong lớp mạng, bạn chỉ nhìn vào phần của khung được gọi là dữ liệu trong khung Ethernet. Khi khung Ethernet di chuyển lên từ lớp liên kết dữ liệu tới ...

Cisco Mạng: Mô hình Mô hình Mạng OSI - núm vú

Cisco Mạng: Mô hình Mô hình Mạng OSI - núm vú

Tổ chức Tiêu chuẩn hoá Quốc tế (ISO) thiết bị phải được thiết kế để giao tiếp với nhau. ISO đã đề xuất mô hình mạng cho phép truyền thông này diễn ra, và mặc dù điều này là tốt từ một mức độ lý thuyết, nó không phải luôn luôn theo sau, đặc biệt là kể từ khi nó được xuất bản sau nhiều mạng ...

Lựa chọn của người biên tập

Lập trình Java cho Android: Cài đặt Công cụ Phần mềm để Bắt đầu - những người có đầu

Lập trình Java cho Android: Cài đặt Công cụ Phần mềm để Bắt đầu - những người có đầu

Trước khi bạn có thể viết Các chương trình Java cho các thiết bị Android, bạn cần một số công cụ phần mềm. Nếu bạn là một tay cũ để cài đặt phần mềm, và nếu máy tính của bạn không phải là quirky, các bước này có lẽ sẽ phục vụ bạn tốt. Truy cập trang web Lập trình Java dành cho Nhà phát triển Android for Dummies và tải xuống tệp có chứa các ví dụ về chương trình. Truy cập Java ...

Java Lập trình Thách thức: Thực hiện lại Tháp Hà Nội - đầu

Java Lập trình Thách thức: Thực hiện lại Tháp Hà Nội - đầu

Thách thức này giúp bạn sử dụng tài năng lập trình của mình để viết một chương trình Java sẽ in các bước cần thiết để giải quyết một tháp Towers của Hà Nội puzzle cho số lượng đĩa. Tháp Hà Nội là một câu đố logic cổ điển bao gồm ba chốt đứng và một số đĩa có đường kính khác nhau. Mỗi

Java: lặp lại và For Vòng lặp - núm vú

Java: lặp lại và For Vòng lặp - núm vú

Trong Java, giống như trong thế giới thực, có rất nhiều lần khi bạn lặp lại một cái gì đó. Tương tự như vậy, các ứng dụng có nhu cầu lặp lại nhiệm vụ. Thực hiện chúng một lần là không đủ, trong một số trường hợp. Chương này giúp bạn hiểu cách thực hiện cùng một nhiệm vụ nhiều lần. Một vòng lặp lặp đi lặp lại bao gồm một cấu trúc đặc biệt theo dõi khi nào ...