CmProcess 是 github 上的一个解决跨进程通信的开源项目,整体代码清晰简洁,可以通过分析其源码可以了解跨进程通信的本质。 ...
分类:
系统相关 时间:
2020-07-19 11:34:14
阅读次数:
89
对于类的非静态成员,每个对象都有自己的一份拷贝,即每个对象都有自己的数据成员,不过成员函数却是每个对象共享的。那么调用共享的成员函数是如何找到自己的数据成员?答案就是用this指针,下面举例说明: 当vbBook对象调用OutputPages成员函数时,this指针指向vbBook对象,当vcBoo ...
分类:
其他好文 时间:
2020-07-19 11:20:31
阅读次数:
80
static关键字提升配置类的优先级,带你领略为何Spring Boot搞出那么多静态内部类 ...
分类:
编程语言 时间:
2020-07-16 12:27:01
阅读次数:
61
静态类 静态类与非静态类的重要区别在于静态类不能实例化,也就是说,不能使用 new 关键字创建静态类类型的变量。在声明一个类时使用static关键字,具有两个方面的意义:首先,它防止程序员写代码来实例化该静态类;其次,它防止在类的内部声明任何实例字段或方法。 静态类是自C# 2.0才引入的,C# 1 ...
静态类: 在类(class)上加入static修饰, 表示该类无法被实例化,并且该类中,无法实例化变量或函数。 那么如果要在此静态类中添加函数、变量、属性,则必须都是静态的。 静态类的主要特性: 1:仅包含静态成员。 2:无法实例化。 3:静态类的本质,是一个抽象的密封类,所以不能被继承,也不能被实 ...
1.1作用 防止指令重排 使得多线程下的共享资源能够独自修改使用。解决缓存不一致问题。 1.2相关知识 1.Java内存模型 1.3详解 一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: 1.保证了不同线程对这个变量进行操作时的可见性,即一个线程修 ...
分类:
其他好文 时间:
2020-07-12 11:55:47
阅读次数:
60
定义数据成员为静态变量,表明此全局数据逻辑上属于该类。 定义成员函数为静态函数,表明此全局函数逻辑上属于该类,而且该函数只对静态数据、全局数据或者参数进行操作,而不对非静态数据成员进行操作。 ####静态数据成员 静态数据成员在定义或说明时前面加关键字static,如: class A { int ...
分类:
其他好文 时间:
2020-07-08 13:05:28
阅读次数:
51
1、面向对象的三大特性 封装:把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 继承:就是让一个类型的对象拥有另一个类型的对象的属性的方法。 多态:同一个类型的对象在执行同一个方法时,可以表现出多种行为特征。 2、请列出C#中几种循环的方法,并 ...
分类:
其他好文 时间:
2020-06-30 13:19:24
阅读次数:
85
this指针那些事 引言 ? 对于Python来说有self,类比到C++中就是this指针 用处 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。 this的作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员时,编译器会自动将对象本身的地址作为一个隐含参 ...
分类:
其他好文 时间:
2020-06-28 10:02:05
阅读次数:
51
1.静态直观的特点 静态成员最显著的一个特点就是它的作用域是全局的。只要在调用处引入了对应的命名空间,那么我们可以在代码任何地方都可以直接使用。凡是具有全局特征的东西我们就可以考虑使用静态。在实际的开发中,静态字段我们常用实现数据的共享,修饰为静态的方法当做常用的工具方法来使用。 2.命名上的思考 ...