> For the complete documentation index, see [llms.txt](https://eece.gitbook.io/mist-innovation-club-flutter-course-1/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://eece.gitbook.io/mist-innovation-club-flutter-course-1/dart-fundamentals-1/inheritance/super-keyword.md).

# super Keyword -1

{% embed url="<https://youtu.be/pnd8tZ-9_R8>" %}

{% hint style="success" %}
The **super** keyword  is a reference variable that is used to refer immediate parent class objects
{% endhint %}

{% tabs %}
{% tab title="Example -1 " %}

```dart
void main() {
  
  
  //super keyword -1 
  var manager1 = Manager();
  
  
  manager1.id =1;
  manager1.firstname="John";
  manager1.lastname="Doe";
  manager1.dayworked=30;
  
  manager1.project ="Alpha";
  
  manager1.salary(20);

  
  
  
  
}

class Employee {
  int id;
  int dayworked;
  String firstname;
  String lastname;

  String fullname() {
    return this.firstname + " " + this.lastname;
  }

  void salary(int perDaywage) {
     print(this.dayworked * perDaywage);
  }
}




// Manager Class 


class Manager extends Employee {
  
  
  //property 
   String project;
 
  
  //Method 
  
  String manageproject(){
    
    return "Managing project " + " " + this.project; 
  }
  
   
  @override
   void salary(int perDaywage) {
     
     super.salary(perDaywage);
    print((this.dayworked * perDaywage)+30);
  }
  
 
}



```

{% endtab %}

{% tab title="Example -2 " %}

```dart
void main() {
  
  
  //super keyword -1 
  var manager1 = Manager();
  
  
  manager1.id =1;
  manager1.firstname="John";
  manager1.lastname="Doe";
  manager1.dayworked=30;
  
  manager1.project ="Alpha";
  
  print(manager1.salary(20));

  
  
  
  
}

class Employee {
  int id;
  int dayworked;
  String firstname;
  String lastname;

  String fullname() {
    return this.firstname + " " + this.lastname;
  }

  int salary(int perDaywage) {
    return (this.dayworked * perDaywage);
  }
}




// Manager Class 


class Manager extends Employee {
  
  
  //property 
   String project;
 
  
  //Method 
  
  String manageproject(){
    
    return "Managing project " + " " + this.project; 
  }
  
   
  @override
   int salary(int perDaywage) {
    return ((this.dayworked * perDaywage)+30 -super.salary(perDaywage));
  }
  
 
}



```

{% endtab %}
{% endtabs %}
