C#是面向对象的语言,每个面向对象语言都有3个基本特征: *封装 把客观的事物封装成类,并将类的内部实现隐藏,以保证数据的完整性。 *继承 通过继承可以复用父类的代码。 *多态 允许将子对象赋值给父对象的一种能力。 C#中面向对象编程是指运用这3个基本特征来编写程序。 ...
目前,前端领域中 React 势头正盛,很少能够深入剖析内部实现机制和原理。 本系列文章 希望通过剖析 React 源码,理解其内部的实现原理,知其然更要知其所以然。 对于 React,其组件生命周期(Component Lifecycle)是它的核心概念,本文从源码入手,来剖析 React 生命周 ...
分类:
其他好文 时间:
2017-05-15 17:28:51
阅读次数:
292
一、核心线程池内部实现 为了能够更好地控制多线程,JDK提供了一套Executor框架,帮助开发人员有效地进行线程控制,其本质就是一个线程池。它的核心成员如图 以上成员均在java.util.concurrent包中,是JDK并发包的核心类。其中ThreadPoolExecutor表示一个线程池。E ...
分类:
编程语言 时间:
2017-05-14 01:07:13
阅读次数:
300
当页面发生错误的时候,ASP.Net会将错误信息展示出来,这样一来不好看,二来会泄露网站的内部实现信息,给网站带来安全隐患,因此需要定制错误页,发生错误时显示开发人员定制的页面404页面放点广告也是好的嘛配置web.config,配置customErrors区域: <customErrors mod ...
分类:
Web程序 时间:
2017-05-11 20:59:15
阅读次数:
184
RxJava是一个神奇的框架,用法很简单,但内部实现有点复杂,代码逻辑有点绕。我读源码时,确实有点似懂非懂的感觉。网上关于RxJava源码分析的文章,源码贴了一大堆,代码逻辑绕来绕去的,让人看得云里雾...
分类:
编程语言 时间:
2017-05-10 23:38:36
阅读次数:
632
上一章我们简单的讲解了什么是动态代理和如何使用动态代理。这章讲解一下jdk的动态代理的内部实现:首先查看测试代码: //创建一个静态方法,生成代理类, public static Object newProxyInstance(Object speak){ System.out.println(JD... ...
分类:
编程语言 时间:
2017-05-10 18:53:30
阅读次数:
281
Activity可以看做是整个Android系统的人机接口,它提供了一个窗口来绘制UI,每个Activity在启动时,我们都需要给它设置一个Content view,作为Activity所呈现的UI内容,这个过程是通过setContentView()方法来实现的。 众所周知,android系统中强化 ...
分类:
移动开发 时间:
2017-05-10 13:01:01
阅读次数:
211
还是不要乱用STL了吧。毕竟炸了这么多回了。 MARK: STL的各种容器,因为内存是动态分配的,所以效率会比较低,内部实现也不如手写(RB_Tree搞得我跟2B一样,STL还说线段树太基础,用RB_Tree好了,然而效率低啊!map, set, etc.)各种数据结构也跟炸了一样(因为要考虑各种各 ...
分类:
其他好文 时间:
2017-05-08 23:29:55
阅读次数:
341
在C#中,所有的类都直接或间接的继承自Object类 在C#中,结构体也继承自Object类 Tostring:当打印一个对象的时候,会默认调用Tostring方法(方法的内部实现) Equals:通过一个自定义的比较规则来判断两个对象是否相同: bool r = xiaoming.Equals(x ...
分类:
其他好文 时间:
2017-05-06 15:09:34
阅读次数:
129
恢复内容开始 面向对象编程有三大特性:封装、继承、多态。 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据。对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法。 继承是为了重用父类代码。两个类若存在IS-A的关系就可以使用继承。,同时继承也为实现多态做 ...
分类:
编程语言 时间:
2017-05-03 10:28:11
阅读次数:
353