![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
原理底层
Zhang放放
用来记录技术宅的游荡
思想,情感,文学与哲学主页请转到知乎搜索用户 Zhang放放
展开
-
Python的一些底层原理
Python部分底层原理列表sort()排序实现引用,浅拷贝,深拷贝列表的引用:浅拷贝哈希的原理集合元素的查找字典底层实现列表sort()排序实现引用,浅拷贝,深拷贝列表的引用:# 定义一个新列表l1 = [1, 2, 3, 4, 5]# 对l2赋值l2 = l1print(l1)l2[0] = 100print(l1)示例结果:[1, 2, 3, 4, 5][100, 2, 3, 4, 5]l2与l1指向同一片内存空间浅拷贝如果想复制l1的值,对l2进行操作不影响l1,原创 2020-10-22 10:50:42 · 652 阅读 · 0 评论 -
Java反射机制的意义
Java反射机制动态特性Java产生对象的方式动态化产生对象后话动态特性这个问题最开始要追溯到动态语言:像Python,PHP这样的动态语言,在程序运行的过程中,可以改变对象的结构,属性,甚至添加方法,这是极大的灵活性。比如,定义的person类中,突然需要加入一个sex属性,可以在实例中直接设置:这就是动态语言,但是java,c这些是先编译为二进制静态文件,而后执行的静态语言。但是Java不是动态语言,却能拥有动态性,其根本就在于反射。Java产生对象的方式new一个实例通过反射构建对象原创 2020-10-19 20:54:32 · 339 阅读 · 0 评论 -
关于补码 (填坑大一)
计算机处理数据的过程有时候我们难以理解或者想通,到底补码是什么,竖式相减什么时候能用,符号位的0和1能不能参与运算,这些本来是大一的知识,今天做一下整理:首先,我们先梳理一下人是怎么进行计算的:对于8-6,人们知道等于2,这是基于十进制的运算,大数减小数,不够减高位借10但是对于6-8,得到-2,我们的逻辑是用8-6,再取相反数。所以对于机器而言,处理两个数的运算,完全可以先判断大小,如果A>B,直接相减,如果A<B,算B-A,而后加符号即可。但是在机器的实现过程中会面临一些问题,原创 2020-10-17 13:12:55 · 415 阅读 · 0 评论