Hướng dẫn what are object and classes in php? - đối tượng và các lớp trong php là gì?
Một lớp là một mẫu cho các đối tượng và một đối tượng là một thể hiện của lớp. Show
Trường hợp OOPGiả sử chúng ta có một lớp học tên là trái cây. Một loại trái cây có thể có các thuộc tính như tên, màu sắc, trọng lượng, v.v. Chúng ta có thể xác định các biến như $ name, $ color và $ trọng lượng để giữ các giá trị của các thuộc tính này. Khi các đối tượng riêng lẻ (táo, chuối, v.v.) được tạo, chúng kế thừa tất cả các thuộc tính và hành vi từ lớp, nhưng mỗi đối tượng sẽ có các giá trị khác nhau cho các thuộc tính. Xác định một lớpMột lớp được xác định bằng cách sử dụng từ khóa $physics = new Books; $maths = new Books; $chemistry = new Books;1, theo sau là tên của lớp và một cặp niềng răng xoăn ({}). Tất cả các thuộc tính và phương pháp của nó đi vào bên trong niềng răng: Cú phápclass Fruit { Dưới đây chúng tôi khai báo một lớp có tên trái cây bao gồm hai thuộc tính ($ name và $ color) và hai phương thức set_name () và get_name () để cài đặt và nhận thuộc tính $ name: class Fruit { & nbsp; // Phương pháp & nbsp; hàm set_name ($ name) {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; } & nbsp; hàm get_name () {& nbsp; & nbsp; & nbsp; trả về $ this-> tên; & nbsp; }}?> Lưu ý: Trong một lớp, các biến được gọi là thuộc tính và hàm được gọi là phương thức! In a class, variables are called properties and functions are called methods! Xác định các đối tượngCác lớp học không có gì nếu không có đối tượng! Chúng ta có thể tạo nhiều đối tượng từ một lớp. Mỗi đối tượng có tất cả các thuộc tính và phương thức được xác định trong lớp, nhưng chúng sẽ có các giá trị thuộc tính khác nhau. Đối tượng của một lớp được tạo bằng từ khóa $physics = new Books; $maths = new Books; $chemistry = new Books;2. Trong ví dụ dưới đây, $ Apple và $ Banana là những trường hợp của loại trái cây: Thí dụclass Fruit { & nbsp; // Phương pháp & nbsp; hàm set_name ($ name) {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; } & nbsp; hàm get_name () {& nbsp; & nbsp; & nbsp; trả về $ this-> tên; & nbsp; }}?> Lưu ý: Trong một lớp, các biến được gọi là thuộc tính và hàm được gọi là phương thức! Xác định các đối tượng Các lớp học không có gì nếu không có đối tượng! Chúng ta có thể tạo nhiều đối tượng từ một lớp. Mỗi đối tượng có tất cả các thuộc tính và phương thức được xác định trong lớp, nhưng chúng sẽ có các giá trị thuộc tính khác nhau. Đối tượng của một lớp được tạo bằng từ khóa $physics = new Books; $maths = new Books; $chemistry = new Books;2. Thí dụclass Fruit { & nbsp; // Phương pháp & nbsp; hàm set_name ($ name) {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; } & nbsp; hàm get_name () {& nbsp; & nbsp; & nbsp; trả về $ this-> tên; & nbsp; }}?> Lưu ý: Trong một lớp, các biến được gọi là thuộc tính và hàm được gọi là phương thức! Các lớp học không có gì nếu không có đối tượng! Chúng ta có thể tạo nhiều đối tượng từ một lớp. Mỗi đối tượng có tất cả các thuộc tính và phương thức được xác định trong lớp, nhưng chúng sẽ có các giá trị thuộc tính khác nhau. Đối tượng của một lớp được tạo bằng từ khóa $physics = new Books; $maths = new Books; $chemistry = new Books; 2.Trong ví dụ dưới đây, $ Apple và $ Banana là những trường hợp của loại trái cây: Thí dụ Thí dụclass Fruit { Dưới đây chúng tôi khai báo một lớp có tên trái cây bao gồm hai thuộc tính ($ name và $ color) và hai phương thức set_name () và get_name () để cài đặt và nhận thuộc tính $ name: 1. Inside the class (by adding a set_name() method and use $this): Thí dụ& nbsp; // Phương pháp & nbsp; hàm set_name ($ name) {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; } & nbsp; hàm get_name () {& nbsp; & nbsp; & nbsp; trả về $ this-> tên; & nbsp; }} $ apple = new Fruit (); $ chuối = fruit new (); $ apple-> set_name ('apple'); $ chuối-> set_name ('chuối'); Các lớp học không có gì nếu không có đối tượng! Chúng ta có thể tạo nhiều đối tượng từ một lớp. Mỗi đối tượng có tất cả các thuộc tính và phương thức được xác định trong lớp, nhưng chúng sẽ có các giá trị thuộc tính khác nhau. Đối tượng của một lớp được tạo bằng từ khóa $physics = new Books; $maths = new Books; $chemistry = new Books;2. Thí dụ& nbsp; // Phương pháp & nbsp; hàm set_name ($ name) {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; } & nbsp; hàm get_name () {& nbsp; & nbsp; & nbsp; trả về $ this-> tên; & nbsp; }} $ apple = new Fruit (); $ chuối = fruit new (); $ apple-> set_name ('apple'); $ chuối-> set_name ('chuối'); Các lớp học không có gì nếu không có đối tượng! Chúng ta có thể tạo nhiều đối tượng từ một lớp. Mỗi đối tượng có tất cả các thuộc tính và phương thức được xác định trong lớp, nhưng chúng sẽ có các giá trị thuộc tính khác nhau. Đối tượng của một lớp được tạo bằng từ khóa $physics = new Books; $maths = new Books; $chemistry = new Books; 2.Trong ví dụ dưới đây, $ Apple và $ Banana là những trường hợp của loại trái cây: Thí dụ$apple
= new Fruit(); Các lớp học không có gì nếu không có đối tượng! Chúng ta có thể tạo nhiều đối tượng từ một lớp. Mỗi đối tượng có tất cả các thuộc tính và phương thức được xác định trong lớp, nhưng chúng sẽ có các giá trị thuộc tính khác nhau. Chúng ta có thể tưởng tượng vũ trụ của chúng ta được làm từ các vật thể khác nhau như mặt trời, trái đất, mặt trăng, v.v ... Tương tự chúng ta có thể tưởng tượng chiếc xe của chúng ta được làm từ các vật thể khác nhau như bánh xe, tay lái, thiết bị, v.v. Thực hiện một phần mềm bằng các đối tượng khác nhau. Khái niệm định hướng đối tượngTrước khi chúng ta đi chi tiết, hãy xác định các thuật ngữ quan trọng liên quan đến lập trình hướng đối tượng.
Xác định các lớp PHPMẫu chung để xác định một lớp mới trong PHP như sau - Đây là mô tả của từng dòng -
Thí dụDưới đây là một ví dụ xác định loại sách loại - price = $par; } function getPrice(){ echo $this->price ." Biến $ Đây là một biến đặc biệt và nó đề cập đến cùng một đối tượng IE. chính nó.$this is a special variable and it refers to the same object ie. itself. Tạo đối tượng trong PHPKhi bạn đã xác định lớp của mình, thì bạn có thể tạo bao nhiêu đối tượng như bạn muốn loại lớp đó. Sau đây là một ví dụ về cách tạo đối tượng bằng toán tử mới.new operator. $physics = new Books; $maths = new Books; $chemistry = new Books; Ở đây chúng tôi đã tạo ra ba đối tượng và những đối tượng này độc lập với nhau và chúng sẽ có sự tồn tại riêng biệt. Tiếp theo chúng ta sẽ xem cách truy cập chức năng thành viên và xử lý các biến thành viên. Gọi các chức năng thành viênSau khi tạo các đối tượng của bạn, bạn sẽ có thể gọi các chức năng thành viên liên quan đến đối tượng đó. Một hàm thành viên sẽ chỉ có thể xử lý biến thành viên của đối tượng liên quan. Ví dụ sau đây cho thấy cách đặt tiêu đề và giá cho ba cuốn sách bằng cách gọi các chức năng thành viên. $physics->setTitle( "Physics for High School" ); $chemistry->setTitle( "Advanced Chemistry" ); $maths->setTitle( "Algebra" ); $physics->setPrice( 10 ); $chemistry->setPrice( 15 ); $maths->setPrice( 7 ); Bây giờ bạn gọi các chức năng thành viên khác để có được các giá trị được đặt bởi ví dụ trên - $physics->getTitle(); $chemistry->getTitle(); $maths->getTitle(); $physics->getPrice(); $chemistry->getPrice(); $maths->getPrice(); Điều này sẽ tạo ra kết quả sau - Physics for High School Advanced Chemistry Algebra 10 15 7 Chức năng xây dựngCác hàm xây dựng là loại chức năng đặc biệt được gọi là tự động bất cứ khi nào một đối tượng được tạo. Vì vậy, chúng tôi tận dụng tối đa hành vi này, bằng cách khởi tạo nhiều thứ thông qua các chức năng xây dựng. PHP cung cấp một hàm đặc biệt gọi là __construct () để xác định hàm tạo. Bạn có thể truyền nhiều đối số bạn thích vào hàm tạo hàm.__construct() to define a constructor. You can pass as many as arguments you like into the constructor function. Ví dụ sau sẽ tạo ra một hàm tạo cho lớp sách và nó sẽ khởi tạo giá và tiêu đề cho cuốn sách tại thời điểm tạo đối tượng. function __construct( $par1, $par2 ) { $this->title = $par1; $this->price = $par2; } Bây giờ chúng ta không cần gọi riêng chức năng tập hợp để đặt giá và tiêu đề. Chúng ta có thể khởi tạo hai biến thành viên này tại thời điểm tạo đối tượng. Kiểm tra ví dụ sau đây - $physics = new Books( "Physics for High School", 10 ); $maths = new Books ( "Advanced Chemistry", 15 ); $chemistry = new Books ("Algebra", 7 ); /* Get those set values */ $physics->getTitle(); $chemistry->getTitle(); $maths->getTitle(); $physics->getPrice(); $chemistry->getPrice(); $maths->getPrice(); Điều này sẽ tạo ra kết quả sau - Physics for High School Advanced Chemistry Algebra 10 15 7 Chức năng xây dựngCác hàm xây dựng là loại chức năng đặc biệt được gọi là tự động bất cứ khi nào một đối tượng được tạo. Vì vậy, chúng tôi tận dụng tối đa hành vi này, bằng cách khởi tạo nhiều thứ thông qua các chức năng xây dựng.__destruct(). You can release all the resources with-in a destructor. PHP cung cấp một hàm đặc biệt gọi là __construct () để xác định hàm tạo. Bạn có thể truyền nhiều đối số bạn thích vào hàm tạo hàm.Ví dụ sau sẽ tạo ra một hàm tạo cho lớp sách và nó sẽ khởi tạo giá và tiêu đề cho cuốn sách tại thời điểm tạo đối tượng. class Child extends Parent { Bây giờ chúng ta không cần gọi riêng chức năng tập hợp để đặt giá và tiêu đề. Chúng ta có thể khởi tạo hai biến thành viên này tại thời điểm tạo đối tượng. Kiểm tra ví dụ sau đây -
Di sản price = $par; } function getPrice(){ echo $this->price ."0 Định nghĩa lớp PHP có thể tùy chọn kế thừa từ định nghĩa lớp cha bằng cách sử dụng mệnh đề mở rộng. Cú pháp như sau - Hiệu quả của việc thừa kế là lớp con (hoặc lớp con hoặc lớp dẫn xuất) có các đặc điểm sau -Tự động có tất cả các khai báo biến thành viên của lớp cha. Tự động có tất cả các chức năng thành viên giống như cha mẹ, mà (theo mặc định) sẽ hoạt động giống như các chức năng đó trong cha mẹ. price = $par; } function getPrice(){ echo $this->price ."1 Ví dụ sau kế thừa lớp sách và thêm nhiều chức năng dựa trên yêu cầu.Bây giờ ngoài các chức năng kế thừa, Class Novel giữ thêm hai chức năng thành viên.
Thành viên công cộngprivate or protected. Trừ khi bạn chỉ định khác, các thuộc tính và phương thức của một lớp là công khai. Điều đó có nghĩa là, chúng có thể được truy cập trong ba tình huống có thể -Từ bên ngoài lớp mà nó được tuyên bố Từ trong lớp mà nó được tuyên bốprivate keyword infront of the member. price = $par; } function getPrice(){ echo $this->price ."2 Từ trong một lớp khác thực hiện lớp mà nó được tuyên bố Cho đến bây giờ chúng tôi đã thấy tất cả các thành viên là thành viên công cộng. Nếu bạn muốn giới hạn khả năng tiếp cận của các thành viên của một lớp thì bạn xác định các thành viên lớp là riêng tư hoặc được bảo vệ.Thành viên tư nhânprotected keyword in front of the member. Bằng cách chỉ định một thành viên riêng tư, bạn giới hạn khả năng tiếp cận của nó đối với lớp mà nó được khai báo. Thành viên tư nhân không thể được giới thiệu từ các lớp kế thừa lớp mà nó được khai báo và không thể được truy cập từ bên ngoài lớp. price = $par; } function getPrice(){ echo $this->price ."3 Một thành viên lớp có thể được thực hiện riêng tư bằng cách sử dụng từ khóa riêng tư của thành viên.Khi lớp MyClass được kế thừa bởi một lớp khác bằng cách sử dụng mở rộng, myPublicFunction () sẽ được hiển thị, cũng như $ Driver. Lớp mở rộng sẽ không có bất kỳ nhận thức nào về hoặc truy cập vào MyPrivateFunction và $ Car, bởi vì chúng được tuyên bố riêng tư. Thành viên được bảo vệ price = $par; } function getPrice(){ echo $this->price ."4 Một thuộc tính hoặc phương thức được bảo vệ có thể truy cập được trong lớp mà nó được khai báo, cũng như trong các lớp mở rộng lớp đó. Các thành viên được bảo vệ không có sẵn bên ngoài hai loại lớp đó. Một thành viên lớp có thể được bảo vệ bằng cách sử dụng từ khóa được bảo vệ trước thành viên. price = $par; } function getPrice(){ echo $this->price ."5 Đây là phiên bản khác nhau của MyClass -Giao diện Các giao diện được xác định để cung cấp một tên chức năng chung cho người thực hiện. Người thực hiện khác nhau có thể thực hiện các giao diện đó theo yêu cầu của họ. Bạn có thể nói, giao diện là bộ xương được thực hiện bởi các nhà phát triển. price = $par; } function getPrice(){ echo $this->price ."6 Kể từ PHP5, có thể xác định giao diện, như thế này - Lớp học trừu tượngMột lớp trừu tượng là một lớp không thể được khởi tạo, chỉ được thừa hưởng. Bạn tuyên bố một lớp trừu tượng với từ khóa trừu tượng, như thế này -abstract, like this − Khi kế thừa từ một lớp trừu tượng, tất cả các phương pháp được đánh dấu trừu tượng trong tuyên bố lớp của cha mẹ phải được xác định bởi đứa trẻ; Ngoài ra, các phương pháp này phải được xác định với cùng một tầm nhìn. price = $par; } function getPrice(){ echo $this->price ."7 Lưu ý rằng các định nghĩa chức năng bên trong một lớp trừu tượng cũng phải được đi trước bởi Tóm tắt từ khóa. Nó không hợp pháp để có các định nghĩa chức năng trừu tượng trong một lớp không phải là người. Từ khóa tĩnhTuyên bố các thành viên hoặc phương thức của lớp là tĩnh giúp chúng có thể truy cập mà không cần phải khởi tạo lớp. Một thành viên được tuyên bố là không thể truy cập tĩnh với một đối tượng lớp khởi tạo (mặc dù phương thức tĩnh có thể). Thử ví dụ sau - price = $par; } function getPrice(){ echo $this->price ."8 Từ khóa cuối cùngPhp 5 giới thiệu từ khóa cuối cùng, ngăn chặn các lớp con ghi đè một phương thức bằng cách tiền tố định nghĩa với Final. Nếu bản thân lớp đang được xác định cuối cùng thì nó không thể được mở rộng. Ví dụ sau dẫn đến lỗi gây tử vong: Không thể ghi đè phương thức cuối cùng Baseclass :: moretesting () price = $par; } function getPrice(){ echo $this->price ."9 Gọi các nhà xây dựng cha mẹThay vì viết một hàm tạo hoàn toàn mới cho lớp con, hãy viết nó bằng cách gọi cho hàm tạo của cha mẹ một cách rõ ràng và sau đó làm bất cứ điều gì cần thiết ngoài việc khởi tạo lớp con. Đây là một ví dụ đơn giản - $physics = new Books; $maths = new Books; $chemistry = new Books;0 Trong ví dụ này, chúng tôi có một lớp cha (tên), có một hàm tạo hai đối tượng và một lớp con (Tên1), có một hàm tạo ba đối tượng. Chất xây dựng của các chức năng của NameB1 bằng cách gọi hàm tạo cha mẹ của nó một cách rõ ràng bằng cách sử dụng cú pháp :: Syntax (chuyển hai đối số của nó theo) và sau đó đặt một trường bổ sung. Tương tự, NAMEUB1 định nghĩa hàm TOSTRING () không xây dựng của nó theo hàm cha mà nó ghi đè. Lưu ý - một hàm tạo có thể được xác định với cùng tên với tên của một lớp. Nó được định nghĩa trong ví dụ trên. − A constructor can be defined with the same name as the name of a class. It is defined in above example. Sự khác biệt giữa lớp và đối tượng trong PHP là gì?Một lớp là những gì bạn sử dụng để xác định các thuộc tính, phương thức và hành vi của các đối tượng. Các đối tượng là những thứ bạn tạo ra từ một lớp. Hãy nghĩ về một lớp học như một bản thiết kế và một đối tượng là tòa nhà thực tế bạn xây dựng bằng cách làm theo kế hoạch chi tiết (lớp). Objects are the things you create out of a class. Think of a class as a blueprint, and an object as the actual building you build by following the blueprint (class).
Đối tượng và lớp học là gì?Một lớp là một loại do người dùng xác định mô tả một loại đối tượng nhất định sẽ trông như thế nào. Một mô tả lớp bao gồm một tuyên bố và một định nghĩa. Thông thường các mảnh này được chia thành các tập tin riêng biệt. Một đối tượng là một thể hiện duy nhất của một lớp. Bạn có thể tạo nhiều đối tượng từ cùng loại lớp.. A class description consists of a declaration and a definition. Usually these pieces are split into separate files. An object is a single instance of a class. You can create many objects from the same class type.
Các đối tượng trong PHP là gì?Một đối tượng là một thể hiện riêng lẻ của cấu trúc dữ liệu được xác định bởi một lớp.Chúng tôi xác định một lớp một lần và sau đó tạo ra nhiều đối tượng thuộc về nó.Đối tượng còn được gọi là trường hợp.an individual instance of the data structure defined by a class. We define a class once and then make many objects that belong to it. Objects are also known as instances.
Các lớp học trong PHP là gì?Một lớp PHP, và nói chung hơn, lập trình hướng đối tượng, cung cấp các cách tiếp cận bổ sung để tái sử dụng và có thể được sử dụng cho nhiều mục đích khác nhau: chúng có thể mô tả các thực thể có các thuộc tính và hành vi đã biết.Chúng có thể được sử dụng làm thông điệp cho các chức năng và các đối tượng khác.object-oriented programming, provides additional approaches to reusability, and can be used for a variety of purposes: They can describe entities that have known properties and behaviors. They can be used as messages to functions and other objects. |