2021-2022-1 20211426 《信息安全专业导论》第八周学习总结
作者:互联网
2021-2022-1 20211426 《信息安全专业导论》第八周学习总结
作业信息
作业模板:https://www.cnblogs.com/rocedu/p/9577842.html#JXJC
作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK06
教材学习内容总结
python
第九章:
其介绍了类和对象,对象也被称为实例。
我们可以定义类:
class car(obiect):
类体
pass
这里也就提到了类变量,类方法,实例变量,实例方法,而类与实例的区别在于实例为个体特有,而类为共有。
对于构造它们,我们都要用到__init__()其方法不好用语言展开说明,可见下图实践:
封装性,是面向对象重要的基本特征之一。私有变量便是为了防止外部调用被封装的内部数据。
使变量变为私有变量的方法是在其前面画上__,而私有方法的封装也是在其前加__,利用属性方式可以简化外部调用者访问被封装变量。
之后,便是继承性,也属于面向对象的重要基本特征之一,继承,即父类传给子类,调用父类构造方法。
如图:
多态性,同属面向对象的基本特性之一。其可与继承联系起来,实践如图:
第十章:
主要介绍异常处理方面的内容。
其介绍了除零异常,即任意整数都不能除以0,为了防止程序出现错误,我们可以
借助try-except语句来进行异常捕获,这个语句与之前学过的while语句,if语句类似,都可叠加,即多个except代码块,如果嫌麻烦,也可以直接进行多重异常捕获,
就不用多敲几遍except,这个语句还可进行嵌套。
finally代码块跟在try-except后面释放资源代码。
对于异常,我们也可以自己对其进行自定义异常类,来实现我们的要求,更加简便化工作。
最后内,对于except嵌套,最好先梳理好流程,不然会很容易发生错误。
计算机科学概论第九章
面向对象———对象:问题背景中具有意义的事物或实体。
对象类:描述一组类似的对象,即具有相同属性。
类中包含字段即类的属性,而方法则使处理对象中数据值的指定算法。
设计方法——首先进行头脑风暴(集体行为),后生成一份暂时的类列表,在确定核心,进行过滤,接着就是类分配,即责任被实现为子程序
其中涉及到python第九章内容封装,最终为责任算法。
翻译过程——编译器:把用高级语言编写的程序翻译为机器码的程序。需要通过编译器的语言最常见的就是C语言,C++了
解释器:输入用高级语言编写的程序,指导计算机执行每个语句指定的动作的程序,自带解释器,即解释型语言则是python
第二代高级语言分为两种,一种为编译,一种为解释。
标准机器语言:字节码(编译java源代码使用的标准机器语言)
程序设计语言范型——命令式:面向过程,对象的范型
声明式:函数式模型,逻辑模型
布尔表达式:即一个标识符序列,求得结果为true或false
数据类型:已经了解过了,简述一下,即整数,实数,字符,布尔型,字符串
输入输出结构:
控制结构:
嵌套逻辑:选择语句可以被嵌套在循环结构,循环结构可以被嵌套在选择语句中,它们也可以在子程序中被嵌套。
异步处理:即不与计算机中的其他操作同时发生。
面向对象的程序用以下结构刻画:
封装:实施信息隐蔽的语言特性,用类结构实现
继承:允许一个类继承另一个类的属性和行为的语言特性
多态:语言具备的消除同名操作的歧义的能力
- 教材学习中的问题和解决过程
- 问题一:编译型和解释型语言,那个更加实用呢
- 解决:上网查的各有优劣,但我更倾向于解释型
1、 编译型语言最大的优势之一就是其执行速度。用C/C++编写的程序运行速度要比用Java编写的相同程序快30%-70%。
2、编译型程序比解释型程序消耗的内存更少。
3、不利的一面——编译器比解释器要难写得多。
- 4、由于松散的安全性和平台依赖性,编译型语言不太适合开发因特网或者基于Web的应用。
-
1、解释型语言提供了极佳的调试支持。一名Java程序员只需要几分钟就可以定位并修复一个“空指针异常”,因为Java运行环境不仅指明了异常的性质,而且给出了异常发生位置具体的行号和函数调用顺序(著名的堆栈跟踪信息)。这样的便利是编译型语言所无法提供的。
2、另一个优势是解释器比编译器容易实现
3、解释型语言最大的优势之一是其平台独立性
4、解释型语言也可以保证高度的安全性——这是互联网应用迫切需要的
5、中间语言代码的大小比编译型可执行代码小很多
- 问题二:嵌套有数量限制吗?如果嵌套过多是否会影响运算效率?
- 解决:上网查询,嵌套是有限制的,如无论使用什么条件限定,if函数以前最多是7层,现在可以达到64层。
- 而至于第二个问题,我查看博客园后,得知这样一个观点:
- 其不是一定的,是有影响因素的。
-
1)不同平台对结构体和全局变量的访问不同;
2)编译器优化能够对这些数据访问轻轻松松的优化。
-
代码调试中的问题和解决过程
- 对于链表的插入,有点不解,对于next的概念不清
- 经过上网查询,得知a->next实际上相当于a的指向,并非是节点。
-
上周考试错题总结
- A record is a named heterogeneous collection of items in which individual items are accessed by position.
- 记录是一个命名的异构项集合,其中各个项按位置进行访问。错误
- An array is a named homogeneous collection of items in which individual items are accessed by an index.
- 数组是项的命名同构集合,其中单个项由索引访问。正确
-
学习进度条
-
代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长 目标 5000行 30篇 400小时 第一周 50/50 2/2 8/8 安装Linux 第二周 80/100 3/4 16/20 学习python 第三周 150/200 1/5 20/36 开始python编码 第四周 300/600 4/6 22/56 用代码托管 第五周 300/900 4/10 20/78 学习python程序流程控制 第六周 600/1200 1/14 10/98 学习使用机器语言与汇编语言 第七周 640/1800 3/15 15/108 学习定义函数以及运用函数 第八周 600/2440 2/18 18/123 学习链表的插入和删除 -
-
计划学习时间:30小时
-
实际学习时间:20小时
改进情况:开始多接触编程类型。
参考资料
- [机算计科学概论]
- 看漫画学python
-
标签:语句,语言,编译,python,学习,嵌套,20211426,2021,2022 来源: https://www.cnblogs.com/zxy1014/p/15530937.html