Câu hỏi phỏng vấn Swift
Câu hỏi

Có cách nào để tạo một `abstr...

Câu trả lời

Trong Swift, ngôn ngữ lập trình không hỗ trợ trực tiếp khái niệm lớp trừu tượng (abstract class) như trong một số ngôn ngữ lập trình khác như Java hay C#. Tuy nhiên, có một số phương pháp gián tiếp để mô phỏng hoặc đạt được hành vi tương tự như lớp trừu tượng.

Một cách tiếp cận là sử dụng phương thức với cơ chế fatalError() trong phần thân để buộc các lớp con phải ghi đè phương thức đó. Khi phương thức này được gọi mà không được ghi đè, chương trình sẽ bị crash tại runtime, tạo ra một lỗi nghiêm trọng. Ví dụ:

swift Copy
class Animal {
    func sound() {
        fatalError("Subclasses need to implement the sound() method.")
    }
}

class Cat: Animal {
    override func sound() {
        print("miauw")
    }
}

class Dog: Animal {
    override func sound() {
        print("woof")
    }
}

Trong ví dụ trên, lớp Animal có phương thức sound() mà không cung cấp triển khai cụ thể nào và sử dụn...

senior

senior

Gợi ý câu hỏi phỏng vấn

junior

Các Framework được sử dụng để xây dựng giao diện ứng dụng cho iOS là gì?

senior

Tác vụ đồng bộ và bất đồng bộ trong iOS là gì?

middle

Generic trong Swift là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào