2018-08-06 14:57:00
C#学习记录:编写高质量代码改善整理建议9-15
区别对待==和Equals 无论是== 还是Equals: 对于值类型,如果类型的值相等,则返回True 对于引用类型,如果类型指向同一个对象,则返回True 且他们都可以被重载 对于string这样一个特殊的引用类,微软可能认为它的现实意义更倾向于一个值类型,所以在FCL(Framework Class Library)中string的比较被重载为值比较,而不是针对引用本身
1600
2018-08-06 14:56:55
2018-08-06 14:54:10
C#学习记录:编写高质量代码改善整理建议1-3
区别对待强转类型和as is 两个类型之间转换有两种情况 1. 他们是父子类的关系: ChildType = (ChildType)ParentType 2.没有继承关系,或者继承同一个父类,这时候就需要重写强转方法
1762
2018-08-06 14:39:03
Java中的隐藏与覆盖的概述及其之间的区别
隐藏和覆盖 覆盖:子类重写父类的方法,要求方法名和参数类型完全一样(参数不能是子类),返回值和异常比父类小或者相同(即为父类的子类),访问修饰符比父类大或者相同。隐藏:父类和子类拥有相同名字的属性或者方法( 方法隐藏只有一种形式,就是父类和子类存在相同的静态方法)时,父类的同名的属性或者方法形式上不见了,实际是还是存在的。
2467
2018-08-06 14:33:36
区分C++常量表达式、const、constexpr(附代码)
说明了const声明的不一定就是常量表达式! C++11新标准规定,允许将变量声明为constexpr 类型以便由编译器来验证变量的值是否是常量表达式。constexpr 指定符声明可以在编译时求得函数或变量的值,声明为constexpr的变量一定是一个常量,而且必须用常量表达式来进行初始化。
2113
2018-08-06 14:28:33
Microsoft C++ 语言扩展:try-except 语句结构化异常
try-except 语句是一项 Microsoft C++ 语言扩展,它使应用程序能够在正常终止执行的事件发生时获取对程序的控制权。 此类事件称为异常,处理异常的机制称为结构化异常处理。 异常可能基于硬件或软件。 即使应用程序无法从硬件或软件异常中完全恢复,结构化异常处理也可以显示错误信息并捕获应用程序的内部状态,从而帮助诊断问题。 这对于无法轻松重现的间歇性问题特别有用。
2938
2018-08-06 14:23:31
系统整理Java语言的发展历程
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等
1635
2018-08-06 14:19:01
2018-08-06 14:09:30
总结常见的 24 种设计模式的使用要点及其 Java 实现
概念 设计模式,是在某个不断出现的“情境(Context)”下,针对某个“问题”的某种“解决方案”: “问题”必须是重复出现的,“解决方案”必须是可反复应用的; “问题”包含了“一个目标”和“一组约束”,当解决方案在两者之间取得平衡,才是有用的模式; 设计模式不是法律准则,只是指导方针,实际使用时可以根据需要微调,只是要作好注释,以便他人清楚; 很多看似的新模式,实质上是现有模式的变体; 模式的选用原则:尽量用最简单的方式设计,除非为了适应未来确实可能的变化,才采用设计模式,因为设计
3314
2018-08-06 14:01:24
你知道吗?java中的线程实际上有6种状态
早期进程的状态: 这里所谓“进程状态”指早期的那种“单线程进程”的状态。 对于现在普遍的“多线程进程”,显然,谈论“进程状态”已经没有意义,应该谈论“进程下某个线程的状态”或者直接说“线程状态”。不过有时还是会把“进程状态”和“线程状态”混着去说。
1823