参考资料:
(1)公众号-芯片学堂;
1.类
(1)类(class)是面向对象编程(OOP)中的一种类型,类会包括成员变量和成员函数,它们共同组成了一种新的数据结构,并共同定义了某一种对象的内容和能力。
(2)类可以通过构造函数(constructor function)在内存中例化出实例(instance),或者叫对象(object)。对象的生命周期是动态的,它可以在程序的运行过程中创建和删除。可以通过句柄(handle)访问对象的内容或调用对象的方法。
2.句柄
(1)SystemVerilog中对对象的引用用的是对象句柄。句柄用来指向具体对象,句柄本身的值就是对象所占内存的起始地址。
(2)在SV中,句柄类型转换需要用内建函数$cast来实现。除了同类型相互casting,一般只有一种结果,即父类句柄指向子类对象。
(3)SV中没有被句柄指向的对象会被自动垃圾回收(garbage collected)。
3.this