1.Java动态代理实例 Java 动态代理一个简单的demo:(用以对比Hadoop中的动态代理) Hello接口: public interface Hello { void sayHello(String to); void print(String p); } Hello接口的实现类: public class HelloImpl implements Hello {           public void sayHello(String to) {          System.…
JVM方法调用过程 重载和重写 同一个类中,如果出现多个名称相同,并且参数类型相同的方法,将无法通过编译.因此,想要在同一个类中定义名字相同的方法,那么它们的参数类型必须不同.这种方法上的联系就是重载. 重载的方法在编译过程中即可完成识别.具体到每一个方法调用,Java编译器会根据所传入参数的声明类型(有别实际类型)来选取重载方法. 选取过程如下: 1.不考虑对基本类型自动装拆箱(auto-boxing,auto-unboxing),以及可变长参数的情况下选取重载方法; 2.如果1中未找到适配的…
http请求中的8种请求方法 1.opions   返回服务器针对特定资源所支持的HTML请求方法   或web服务器发送*测试服务器功能(允许客户端查看服务器性能) 2.Get   向特定资源发出请求(请求指定页面信息,并返回实体主体) 3.Post   向指定资源提交数据进行处理请求(提交表单.上传文件),又可能导致新的资源的建立或原有资源的修改 4.Put   向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容) 5.Head  与服务器索与get请求一致的相应,…
最近在看 C++ 的虚方法调用实现原理,大概就是说在 class 的首位置存放着一个指向 vtable array 指针数组 的指针,而 vtable array 中的每一个指针元素指向的就是各自的 虚方法,实现方式很有意思,哈哈,现在我很好奇 C# 中如何实现的. 一: C# 中的多态玩法 1. 一个简单的 C# 例子 为了方便说明,我就定义一个 Person 类和一个 Chinese 类,详细代码如下: internal class Program { static void Main(st…
#三次握手 客户端向服务器端发送SYN包,客户端进入SYN_SEND状态 服务器端收到客户端发送的包返回ACK+SYN包,服务器端进入SYN_RECV状态 客户端收到服务器端返回的包再发回ACK包,客户端进入ESTABLISHED状态,服务器端收到包也进入ESTABLISHED状态 客户端状态:SYN_SENDE    STABLISHED 服务器端状态:SYN_RCVE    ESTABLISHED #四次挥手 客户端发送FIN包询问服务器端是否能断开,客户端进入FIN_WAIT_1状态 服务…
上一篇帖子go微服务框架go-micro深度学习(三) Registry服务的注册和发现详细解释了go-micro是如何做服务注册和发现在,服务端注册server信息,client获取server的地址信息,就可以和服务建立连接,然后就可以进行通信了.这篇帖子详细说一下,go-micro的通信协议.编码,和具体服务方法的调用过程是如何实现的,文中的代码还是我github上的例子: gomicrorpc go-micro 支持很多通信协议:http.tcp.grpc等,支持的编码方式也很多有jso…
摘要: 上一篇帖子go微服务框架go-micro深度学习(三) Registry服务的注册和发现详细解释了go-micro是如何做服务注册和发现在,服务端注册server信息,client获取server的地址信息,就可以和服务建立连接,然后就可以进行通信了. 上一篇帖子go微服务框架go-micro深度学习(三) Registry服务的注册和发现详细解释了go-micro是如何做服务注册和发现在,服务端注册server信息,client获取server的地址信息,就可以和服务建立连接,然后就可…
十一月月底,宿舍楼失火啦,搞得20多天没有网,目测直到放假也不会来了... 正题 嗯~,其实阅读源码不是为了应付面试,更重要的让你知道,大师是怎样去写代码的,同样是用Java,为啥Clinton Begin写的叫源码,而你写只能叫代码. 最简单的入门代码: 先读取配置文件流,然后构造个SqlSessionFactory,然后开启一个SqlSession,指定statement,调用查询方法,返回结果.那么,你知道他是怎样实现的吗 SqlSessionFactoryBuilder.build 方法…
六种构造函数的实现代码例如以下: #include<iostream> using namespace std; //c++中六种默认的构造函数 class Test { public: Test(int d = 0):m_data(d)//1构造函数(带默认值0),以參数列表的形式初始化 { cout<<"Creat Test Obj :"<<this<<endl; } ~Test()//2析构函数 { cout<<&quo…
假设从A场景切换到B场景,调用各场景方法的顺序为: 如果没有切换效果(transition),则先调用B的init(),再调用A的onExitTransitionStart(),接着调用A的onExit(),然后调用B的onEnter(),最后调用B的onEnterTransitionFinish: 如果有切换效果(transition),则为先调用B的init(),再调用A的onExitTransitionStart(),接着调用B的onEnter(),然后调用A的onExit(),最后调用B…