是利用虚函数表和虚函数表指针实现的。当类存在虚函数时,编译器会为类分配一个虚函数表(数组)来存储虚函数的地址。而每一个对象创建时,都会隐式创建一个指针变量,指向这个虚函数表。