- C# 6 and .NET Core 1.0:Modern Cross:Platform Development
- Mark J. Price
- 269字
- 2021-07-09 20:15:47
Talking about OOP
An object in the real world is a thing, like a car or a person. An object in programming often represents something in the real world, such as a product or bank account, but can also be something more abstract.
In C#, we use a class
(usually) or a struct
(rarely) to define each type of object. You can think of a type as being a blueprint or template for an object.
Encapsulation is the combination of the data and actions that are related to an object. For example, a BankAccount
type might have data such as Balance
and AccountName
, as well as actions such as Deposit
and Withdraw
. When encapsulating, you often want to control what is allowed to access those data and actions.
Composition is about what an object is made of. For example, a car is composed of different parts such as four wheels, several seats, an engine, and so on.
Aggregation is about what is related to an object. For example, a person could sit in the driver's seat and becomes the car's driver.
Inheritance is about reusing code by having a subclass derive from a base or super class. All functionality in the base class becomes available in the derived class.
Abstraction is about capturing the core idea of an object and ignoring the details or specifics. Abstraction is a tricky balance. If you make a class more abstract, more classes would be able to inherit from it, but there will be less functionality share.
Polymorphism is about allowing a derived class to override an inherited action to provide custom behavior.
- DBA攻堅指南:左手Oracle,右手MySQL
- 數字媒體應用教程
- Effective C#:改善C#代碼的50個有效方法(原書第3版)
- Rust編程從入門到實戰
- MySQL 8 DBA基礎教程
- 基于Java技術的Web應用開發
- Practical DevOps
- Functional Programming in JavaScript
- Access 2010數據庫基礎與應用項目式教程(第3版)
- Mastering Kali Linux for Web Penetration Testing
- 可解釋機器學習:模型、方法與實踐
- Python開發基礎
- 零基礎學C語言(第4版)
- Anaconda數據科學實戰
- UX Design for Mobile