面向对象

1 面向对象
1.1 语言的分类
面向机器
抽象成机器指令,机器容易理解
代表:汇编语言

面向过程
做一件事情,排出个步骤,第一步干什么,第二步干什么,如果出现情况A,做什么处理,如果出现了情况B,做什么出理。可以封闭成函数
问题规模小,可以步骤化,按部就班处理
代表:C语言

面向对象OOP
随着计算机需要解决的问题的规模扩大,情况越来越复杂。需要很多人,很多部门协作,面向过程编程不太适合了。
代表:C++、Java、Python等

1.2 面向对象
什么是面向对象?
一种认识世界、分析世界的方法论。将万事万物抽象为类。

类class
类是抽象的概念,是万事万物的抽象,是一类事物的共同特征的集合。
用计算机语言来描述类,就是属性和方法的集合

对象instance、object
对象是类的具体,是一个实体。
对于我们每个人这个个体,都是抽象概念人类的不同的实体。

举例:
你吃鱼
你,就是对象;鱼,也是对象;吃就是动作
你是具体的人,是具体的对象。你属于人类,人类是个抽象的概念,是无数具体的个体的抽象。
鱼,也是具体的对象,就是你吃的这一条具体的鱼。这条鱼属于鱼类,是无数的鱼抽象出来的概念。
吃,是动作,也是操作,也是方法,这个吃是你的动作,也就是人类具有的方法。如果反过来,鱼吃人。吃就是鱼类的动作了。
吃,这个动作,很多动物都具有的动作,人类和鱼类都属于动物类,而动物类是抽象的概念,是动物都有吃的动作,但是吃法不同而已。
你驾驶车,这个车也是车类的具体的对象(实例),驾驶这个动作是鱼类不具有的,是人类具有的方法。

属性,它是对象状态的抽象,用数据结构来描述。
操作,它是对象行为的抽象,用操作名和实现该操作的方法来描述。(即函数)

每个人都有名字、身高、体重等信息,这些信息是个人的属性,但是,这些信息不能保存在人类中,因为它是抽象的概念,不能保留具体的值 。
而人类的实例,是具体的人,你可以存储这些具体的属性,而且可以不同人有不同的属性。

哲学
一切皆对象
对象是数据和操作的封装(类是属性和方法的封装)
对象是独立的,但是对象之间可以相互作用(实例)
目前OOP是最接近人类认知的编程范式

1.3 面向对象3要素
1. 封装
1) 组装:将数据和操作组装到一起。
2) 隐藏数据:对外只暴露一些接口,通过接口访问对象。比如驾驶员使用汽车,不需要了解汽车的构造细节,只需要知道使用什么部件怎么驾驶就行,踩了油门就能跑,可以不了解后面的机动原理
2. 继承
1) 多复用,继承来的就不用自己写了
2) 多继承少修改,OCP(Open-closed Principle),使用继承来改变,来体现个性
(开闭原则:子类修改与父类不同的,个性化修改)
3. 多态
1) 面向对象编程最灵活的地方,动态绑定

人类就是封装;
人类继承自动物类,孩子继承父母特征。分为单一继承、多继承;
多态,继承自动物类的人类、猫类的操作“吃”不同。

多继承编程语言:Python、C++ (引入了复杂性)
单一继承编程语言:Java

一、综合实战—使用极轴追踪方式绘制信号灯 实战目标:利用对象捕捉追踪和极轴追踪功能创建信号灯图形 技术要点:结合两种追踪方式实现精确绘图,适用于工程制图中需要精确定位的场景 1. 切换至AutoCAD 操作步骤: 启动AutoCAD 2016软件 打开随书光盘中的素材文件 确认工作空间为"草图与注释"模式 2. 绘图设置 1)草图设置对话框 打开方式:通过"工具→绘图设置"菜单命令 功能定位:该对话框包含捕捉、追踪等核心绘图辅助功能设置 2)对象捕捉设置 关键配置: 启用对象捕捉(F3快捷键) 启用对象捕捉追踪(F11快捷键) 勾选端点、中心、圆心、象限点等常用捕捉模式 追踪原理:命令执行时悬停光标可显示追踪矢量,再次悬停可停止追踪 3)极轴追踪设置 参数设置: 启用极轴追踪功能 设置角度增量为45度 确认后退出对话框 3. 绘制信号灯 1)绘制圆形 执行命令:"绘图→圆→圆心、半径"命令 绘制过程: 使用对象捕捉追踪定位矩形中心作为圆心 输入半径值30并按Enter确认 通过象限点捕捉确保圆形位置准确 2)绘制直线 操作要点: 选择"绘图→直线"命令 捕捉矩形上边中点作为起点 捕捉圆的上象限点作为终点 按Enter结束当前直线命令 重复技巧: 按Enter可重复最近使用的直线命令 通过圆心捕捉和极轴追踪绘制放射状直线 最终形成完整的信号灯指示图案 3)完成绘制 验证要点: 检查所有直线是否准确连接圆心和象限点 确认极轴追踪的45度增量是否体现 保存绘图文件(快捷键Ctrl+S)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值