# Object Class

{% embed url="<https://youtu.be/tJLOadxy7f8>" %}

{% hint style="success" %}
[E](https://youtu.be/tJLOadxy7f8)verything you can place in a variable is an *object*, and every object is an instance of a *class*. Even numbers, functions, and `null` are objects. All objects inherit from the [Object](https://api.dart.dev/stable/dart-core/Object-class.html) class.
{% endhint %}

```dart
void main() {
  // Object Class in Dart

  var manager1 = Manager("Alpha", 1, 12, "John", "Doe");

  var employee1 = Employee(1, 12, "John", "Doe");

  print(manager1.toString());
}

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);
  }

  @override
  String toString() {
    return "id: $id , dayworked: $dayworked, firstname : $firstname,lastname: $lastname ";
  }

  Employee(this.id, this.dayworked, this.firstname, this.lastname);
}

// Manager Class

class Manager extends Employee {
  //property
  String project;

  //Method

  String manageproject() {
    return "Managing project " + " " + this.project;
  }

  @override
  String toString() {
    return "${super.toString()} project: $project";
  }

  Manager(this.project, int id, int dayworked, String firstname, String lastname)
      : super(id, dayworked, firstname, lastname);
}


```

![](https://1972396024-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MCuqiBdVbVkT07RwbQD%2F-MESM3DZlWKbLfUAHRkj%2F-MESMFwVso_fh8ryFrcp%2Fdiagram-20200811.svg?alt=media\&token=6c2581fa-28bb-4c4e-b828-1d3f5b511c5e)

**Documentation of the Object class**

{% embed url="<https://api.dart.dev/stable/2.9.0/dart-core/Object-class.html>" %}
