phỏng vấn tuyển dụng php nâng cao

Để trả lời được những câu hỏi này bạn phải biết các kiến thức về php cơ bản, lập trình hướng đối tượng OOP, và mô hình MVC. Hôm trước mình có giới thiệu qua về câu hỏi và đáp án phỏng vấn lập trình viên php cơ bản . Hôm nay mình sẽ trình bày tiếp các câu hỏi để nâng cao kiến thức về php cho các bạn nhé. 

Câu 1: Nêu các tính chất trong lập trình hướng đối tượng (OOP).

OOP có 4 tính chất đặc trưng: Tính trừu tượng, tính kế thừa, tính đa hình, tính đóng gói

Tính trừu tượng: Đối tượng tạo ra ban đầu có thể khai báo trừu tượng các đặc điểm chung, cốt lõi để sử dụng cho xuyên suốt chương trình, các đặc điểm này có thể được khai báo hoặc không.

Tính kế thừa: Cho phép các đối tượng khác kế thừa lại các thuộc tính hoặc phương thức đã được khai báo ở lớp cha, thông qua extends. Điều này cho phép các đối tượng chia sẻ và phát triển các phương thức, thuộc tính của mình mà không phải định nghĩa lại những cái có sẵn ở lớp cha. giảm thiểu khả nang code dư thừa và dễ dàng nâng cấp chương trình.

Tính đóng gói: Chúng ta có thể gói biến,phương thức, hàm vào một class và khi cần thì gọi(lấy) chúng ra thông qua một trung gian. để che dấu code của mình.

Tính đa hình: Các phương thức, cùng tên cùng tham số, nhưng khi được định nghĩa khác nhau ở các lớp con thì có thể khác nhau về kết quả.

Câu 2: Sự khác nhau và giống nhau của abtracts class và interface

Giống nhau: Đều không thể khởi tạo đối tượng trực tiếp., khi kế thừa lại abtract và interface thì tất cả các thuộc tính và phương thức khai báo abtract đàng trước đều phải được định nghĩa lại. => 100% trong interface đều phải định nghĩa lại còn abtract có thể đã được định nghĩa ở lớp cha rồi

Khác nhau : 

  1. abtract class là lớp trìu tượng có thể khai báo phần đầu hoặc phần thân, còn với interface tất chỉ chỉ được khai báo phần đầu.
  2. abtract class khai báo được field và constant, biến, hằng còn interface thì không
  3. Phương thức và thuộc tính trong abtract class phải khai báo mức độ truy cập là public,private,protected còn interface mặc định là public abstract....
  4. abtract thừa kế từ 1 class duy nhất(extends) => không có tính đa kế thừa. còn interface được hiện thực(implements) từ nhiều interface

còn nhiều nữa tạm dừng tý. đi ăn cơm đã. đói tụt huyết áp rồi. tối về viết tiếp

  • Tác giả: Admin
  • 04/07/2017