【愚公系列】2022年08月 Go教学课程 029-面向对象简介

举报
愚公搬代码 发表于 2022/08/31 21:18:46 2022/08/31
【摘要】 一、面向对象简介 1.面向对象和面向过程 1.1 面向过程所谓的面向过程就是:强调的是步骤、过程、每一步都是自己亲自去实现的。这些都是以什么正在发生为主要目标进行编程,与面向对象明显的不同就是封装、继承、类。简写为POP。 1.2 面向对象所谓的面向对象其实就是找一个专门做这个事的人来做,不用关心具体怎么实现的。所以说,面向过程强调的是过程,步骤。而面向对象强调的是对象,也就是干事的人。面...

一、面向对象简介

1.面向对象和面向过程

1.1 面向过程

所谓的面向过程就是:强调的是步骤、过程、每一步都是自己亲自去实现的。这些都是以什么正在发生为主要目标进行编程,与面向对象明显的不同就是封装、继承、类。简写为POP

1.2 面向对象

所谓的面向对象其实就是找一个专门做这个事的人来做,不用关心具体怎么实现的。所以说,面向过程强调的是过程,步骤。而面向对象强调的是对象,也就是干事的人。面向对象是相对于面向过程来讲的,面向对象方法,把相关的数据和方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式。简写为OOP

1.3 面向对象和面向过程差别

面向对象编程 面向过程编程
中心 以对象为中心 以过程为中心
知识点 类的创建和调用 函数的创建和调用
程序组成 一组对象的集合 一系列过程的集合
适用场景 较复杂,尤其是持续更新的代码 较简单,且功能较为稳定的代码

面向对象的好处就是封装、继承、多态。

2.面向对象和面向过程案例

1、面向过程

package main

import (
	"fmt"
)

func add(a, b int) (c int) {
	c = a + b
	return 
}

func main() {
	a, b := 1, 2
	fmt.Println(add(a, b))
}

在这里插入图片描述
2、面向对象

package main

import (
	"fmt"
)

type myint int

func (a myint) add(b myint) (c myint) {
	c = a + b
	return
}

func main() {
	var a myint = 1
	fmt.Println(a.add(2))
}


在这里插入图片描述

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。