UVM:9.1.5 子类继承父类的callback 机制

1.假如一个公司有前后两代产品,新的验证平台与旧的大部分一致,只是要扩展my_driver,即需要从my_driver 中派生一个新的类new_driver。还要保证第一代测试用例在尽量不改动的前提下在新的通过。

1)由于第一个callback 在声明的时候指明了这个池子只能用于my_driver,指明才能让new_driver用呢?

2.这要子类继承父类的callback。new_driver:

1)使用了uvm_set_super_type 宏,把子类和父类关联在一起。第一个是子类,第二个是父类。

2)在main_phase 中调用uvm_do_callbacks 宏时,第一个是my_driver,而不是new_driver。与在my_driver 中一样。

3.my_agent:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-05 18:45:18

UVM:9.1.5 子类继承父类的callback 机制的相关文章

子类继承父类后想要扩展父类方法

1 >>> class PClass(object): 2 def setInfo(self,sex='Male'): 3 self.gender = sex 4 5 6 >>> class CClass(PClass): 7 def setInfo(self,who): 8 self.name = who 9 PClass.setInfo(self)#子类继承父类后想要扩展父类方法,若仍想保留父类方法可以通过回调 10 11 12 >>> x = C

关于子类继承父类的一个容易忽视的小细节

子类继承父类的时候对父类的属性有没有继承呢??(其实我自己刚学,一些细节的不是太清楚) 下面的代码会说明一个容易忽视的细节: 这是父类: public class FatherClass { int a = 10; public void fun(){ System.out.println("This is FatherClass funMothed!!"); }} 这是子类: public class Child extends FatherClass { int a = 20; p

子类继承父类传参01

python中子类继承父类(传参数与不传参数) Class A(object): def __init__(self,a='A'): print('Enter: ',a) print('Leave: ',a) Class B: def __init__(self,a=None): print('ENter B') super(B,self).__init__(a) print '111' b=B() print '222' b=B(123) 输出: 111 Enter B ('ENter: ',

Java子类继承父类,当实例化子类对象时的执行顺序

子类继承父类,当实例化子类对象时,执行顺序如下:     父类层级静态块      自身静态块     父类块      父类构造器     自身块      自身构造器 由于继承,肯定应该先加载父类再加载子类,加载类自然会调用静态块,然后是调用父类的构造函数和子类的构造函数,不过构造函数调用前肯定要先调用域或块,这样才能正确创建对象. ················································赋值顺序如下:     父类的静态变量赋值     自身的静态变

js中的子类继承父类的方法和属性

上次讲了个简单的继承,这次 咱们讲个稍微复杂点的,那就是让子类继承父类的属性和方法,假设人 (Person)是父类,工人(Worker)是子类,让worker继承person的属性和方法: 父类: function Person(name,age) { this.name=name; this.age=age; } Person.prototype.showName=function() { alert(this.name); } function worker(name,age,job) {

子类继承父类的私有属性

最近学习继承,从书中看到子类继承父类,子类拥有父类所有的属性和方法,于是使用程序去验证,发现父类的私有属性和私有方法,子类是不能访问的,当然一些父类的私有属性可能可以通过相应的方法访问到,但是私有的方法似乎不能简单的访问,这里暂不考虑Java反射机制,于是我分析,子类不能继承父类私有的属性及方法,但是分析了内存后,我发现我是错的,在一个子类被创建的时候,首先会在内存中创建一个父类对象,然后在父类对象外部放上子类独有的属性,两者合起来形成一个子类的对象.所以所谓的继承使子类拥有父类所有的属性和方法

python 子类继承父类__init__(转载)

转载: http://www.jb51.net/article/100195.htm 前言 使用Python写过面向对象的代码的同学,可能对 __init__ 方法已经非常熟悉了,__init__方法在类的一个对象被建立时,马上运行.这个方法可以用来对你的对象做一些你希望的 初始化 . 注意:这个名称的开始和结尾都是双下划线. 父类A ? 1 2 3 4 5 6 class A(object):  def __init__(self, name):   self.name=name   prin

python之子类继承父类时进行初始化的一些问题

直接看代码: class Person: def __init__(self): self.name = "jack" class Student(Person): def __init__(self): self.school = "一中" stu = Student() print("学生的姓名是:",stu.name) 此时,程序是不能正常运行的,运行之后报错: 这是为什么呢? __init__相当于是python类的构造方法,在类进行实例

Python 子类继承父类

写过程序的都知道类,就是面向对象的意思,编程的水平大致分为几个层次,基本语法,函数,面向对象,数据结构,架构,越往上水平越高. 在创建类的时候,我们通常把具有相关性的函数包装为一个类,类也可以嵌套,叫父类和子类,尤其在python中,所有的对象都可以当成一个variable,下面给出一个类嵌套的例子. class Metric(object): def __init__(self): self.var = "Hadoop" def print_metric(self): print &