面向对象的基本概念、基本特征、设计原则
来源:互联网 发布:网络客服岗位要求 编辑:程序博客网 时间:2024/05/22 14:58
- 面向对象的基本概念
- 面向对象和面向过程的区别
- 对象类实例的区别
- 抽象类接口的区别
- 定义
- 区别
- 使用场景
- Reference
- OOP Vs POP 参考网址
- 抽象类与接口区别
- 对象与实例的区别
- 面向对象的基本概念
面向对象:面向对象是一种对现实世界理解和抽象的软件开发方法——from 百度百科
面向对象编程:是一种基于对象的编程范式(英语为Programming paradigm,范式即模式、方法),它可能包含属性(knows as attribute)和方法(knows as method)。对象的一个特征就是对象的方法可以访问并且通常会修改对象的属性。在面向对象编程中,计算机程序通常是通过产生能相互作用的对象设计而成的。面向对象语言有许多值得注意的差异性,但是最流行的一种是基于类的(class-based),意味着对象是类的实例,类能决定对象的类型。—— from 维基百科.
面向对象的基本概念
面向对象和面向过程的区别
补充:
1. 当代码进行一些小改动(比如增加或减小某个需求),与OOP相比,一般POP的代码改动量较大。
2. 互动性很高的程序,不适宜用POP实现,侧面反映OOP比较通用。
3. 面向过程: 程序 = 算法 + 数据
4. 面向对象: 程序 = 对象 + 消息
5. Procedural programming commands the computer step by step via a list of instructions. It relies on subroutines or routines. A routine can have a series of computational steps. Procedural programming is sometimes referred to as imperative programming.
6. Object-oriented programming, as its name implies, relies on objects. Objects are components of a program that know how to execute certain tasks and interact with the other elements of the program.
7. OOP、POP共同点是to make programming efficient。
对象、类、实例的区别
类解释一:是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的属性和方法。—— from 维基百科
类解释二:In very simple terms, a class is a blueprint or a template for a specific real life object.
对象:an object is the memory block(s) used to store necessary information according this blueprint.
类实例化的结果就是对象。实例化就是一个“按照蓝图(class)创建出一个真实对象”的过程。对象被创建出来后,对象本身就包含了属性、方法等信息,所以可以说对象其实就是存储必要信息的内存块。
例子:
new Car();
说明:
a. 通过new操作,一个Car对象被创建,返回的是Car对象的引用。
b. Car对象的声明周期从调用Car构造函数开始直至被销毁。
c.销毁后被垃圾回收器所回收。
实例:Instance is a memory block that refers an object.
Car myCar = new Car();
说明:
a. Car被实例化后,会返回一个引用,这个引用就是存储在myCar。即是说myCar就是实例(instance)。
Object Vs. Instance
Instance是一个指向Object的引用。
当所有指向一个对象的引用被置空(null),Object被垃圾收集器回收掉。
抽象类、接口的区别
定义
抽象类: Abstract classes are created to capture common characteristics of subclasses. It can not be instantiated, it can be only used as super class by its subclasses. Abstract classes are used to create template for its sub classes down the hierarchy.
接口:An interface is a collection of abstract methods. A class implements an interface, thereby inheriting the abstract methods of the interface. So it is kind of signing a contract, you agree that if you implement this interface, then you have to use its methods. It is just a pattern, it can not do anything itself.
区别
使用场景
- 如果你有很多方法,但是只想实现其中的一部分方法,则使用抽象类。
- 如果你想使用多继承,则使用接口。
- 假如你的基本条款老是变化,则使用抽象类。因为如果使用接口,那么它的所有实现类都需要跟着变化,而使用抽象类就不需要变动。
Reference
OOP Vs POP 参考网址
【1】http://ecomputernotes.com/java/what-is-java/what-is-the-difference-between-procedural-and-object-oriented-programming-in-java
【2】http://freefeast.info/general-it-articles/difference-between-procedure-oriented-programming-and-object-oriented-programming-procedure-oriented-programming-vs-object-oriented-programming/
【3】http://www.circuitstoday.com/difference-between-procedure-oriented-and-object-oriented-programming
抽象类与接口区别
【4】https://www.javacodegeeks.com/2014/06/difference-between-abstract-class-and-interface-in-java.html
对象与实例的区别
【5】http://www.differencebetween.com/difference-between-object-and-vs-instance/
- 面向对象的基本概念、基本特征、设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征和五种设计原则
- 面向对象的三个基本特征和五种设计原则
- 面向对象的三个基本特征和五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的基本特征和多种设计原则详解
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征 和 五种设计原则
- 面向对象的三个基本特征和五大设计原则
- 面向对象的三个基本特征和五个设计原则
- 2017暑假训练第二十一天
- 浙大PAT甲级-1061
- C++笔记_03面向对象1,2
- 剑指offer第六题(数组)
- Python爬虫——利用PhantomJS下载动态加载图片
- 面向对象的基本概念、基本特征、设计原则
- 数组中重复的数字
- 过滤器、监听器、拦截器的区别
- 2017年8月23日 星期三
- python中的list和tuple
- C++笔记_03面向对象3
- 《.NET 设计规范》第 8 章:使用规范
- JVM内存模型之方法区
- python操作数据库