Câu trả lời là phức tạp, vì hai lý do.
Những người khác nhau trong Khoa học Máy tính giải thích thuật ngữ "đối tượng" khác nhau. Một là một đối tượng bao gồm một số dữ liệu và hoạt động được đóng gói cùng nhau. Mặt khác là một đối tượng là tất cả nhưng cũng có "trạng thái", tức là nó là một dạng của một thực thể có thể thay đổi .
Có những vấn đề triết học sâu sắc liên quan đến "thay đổi" nghĩa là gì (và "thực thể" nghĩa là gì, vì nó liên tục thay đổi), và liệu các mô tả toán học có thực sự nắm bắt được các thực thể có thể thay đổi hay không.
hg( x ) = gx g- 1hggx ↦ gx g- 1⟨ g, x ↦ gx g- 1⟩⟨ g, x ↦ gx g- 1, x ↦ g- 1x g⟩
xx˙x ( t )x˙x ( t)t. Từ điều này, nhiều nhà toán học suy nghĩ sâu sắc đã kết luận rằng sự thay đổi không thực sự tồn tại và tất cả những gì bạn có là chức năng của thời gian. Nhưng những gì đã thay đổi trong cơ học Newton không phải là vị trí, mà là hạt . Vị trí là trạng thái tức thời của nó. Không có nhà toán học hay nhà vật lý nào giả vờ rằng một hạt là một ý tưởng toán học. Nó là một thứ vật chất.
Vì vậy, nó là với các đối tượng. Chúng là những thứ "vật lý" và các trạng thái là thuộc tính toán học của chúng. Để có một cuộc thảo luận tốt về khía cạnh này, hãy xem Chương 3 của Cấu trúc và diễn giải các chương trình máy tính của Abelson và Sussman . Đây là một cuốn sách giáo khoa tại MIT và họ dạy nó cho tất cả các nhà khoa học và kỹ sư, những người mà tôi nghĩ hiểu những thứ "vật lý" hoàn toàn tốt.
x1( t )x2( t )
Tương tự, cách toán học tiêu chuẩn để mô hình hóa các chương trình hướng đối tượng là coi mỗi đối tượng là một chỉ mục vào không gian trạng thái. Sự khác biệt duy nhất là vì các vật thể đến và đi, và cấu trúc của hệ thống là động, chúng ta cần mở rộng nó thành mô hình "thế giới có thể" trong đó mỗi thế giới về cơ bản là một tập hợp các chỉ số. Phân bổ và phân bổ các đối tượng sẽ liên quan đến việc di chuyển từ thế giới này sang thế giới khác.
Tuy nhiên đang có một vấn đề. Không giống như trong cơ học, chúng tôi muốn trạng thái của các đối tượng của chúng tôi được gói gọn . Nhưng các mô tả toán học của các đối tượng đặt các trạng thái ở khắp mọi nơi, phá hủy hoàn toàn việc đóng gói. Có một mẹo toán học gọi là "tham số quan hệ" có thể được sử dụng để cắt mọi thứ về kích thước. Bây giờ tôi sẽ không đi sâu vào nó, ngoại trừ việc nhấn mạnh rằng đó là một thủ thuật toán học, không phải là một lời giải thích rất khái niệm về đóng gói. Một cách thứ hai để mô hình hóa các đối tượng về mặt toán học, với sự đóng gói, là tinh chỉnh các trạng thái và mô tả hành vi của đối tượng theo các sự kiện có thể quan sát được. Để thảo luận tốt về cả hai mô hình này, tôi có thể giới thiệu cho bạn bài viết của tôi có tiêu đề Đối tượng và các lớp trong Ngôn ngữ giống như Algol .
[Ghi chú đã thêm:]
Một phân tích hay về nền tảng toán học của các đối tượng có thể được tìm thấy trong bài viết " Tìm hiểu về trừu tượng hóa dữ liệu, xem xét lại " của William Cook .