How to Instantiate an Object In Dart?

9 minutes read

To instantiate an object in Dart, you can use the new keyword followed by the class name and parentheses. Here's an example:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Define a class
class Person {
  String name;
  int age;

  // Constructor
  Person(this.name, this.age);

  void introduceYourself() {
    print("Hello, my name is $name and I am $age years old.");
  }
}

void main() {
  // Instantiate an object of the Person class
  var person = new Person("John", 25);

  // Access object properties
  print(person.name); // Output: John
  print(person.age);  // Output: 25

  // Call object methods
  person.introduceYourself(); // Output: Hello, my name is John and I am 25 years old.
}


In the above code, we define a Person class with properties name and age, as well as a constructor that assigns values to these properties. To instantiate an object from the Person class, we use the new keyword followed by the class name (Person) and parentheses, passing any required constructor arguments. We can then access the object's properties and call its methods as needed.

Best Dart Books to Read in 2024

1
Flutter and Dart Cookbook: Developing Full-Stack Applications for the Cloud

Rating is 5 out of 5

Flutter and Dart Cookbook: Developing Full-Stack Applications for the Cloud

2
Flutter Cookbook: Over 100 proven techniques and solutions for app development with Flutter 2.2 and Dart

Rating is 4.9 out of 5

Flutter Cookbook: Over 100 proven techniques and solutions for app development with Flutter 2.2 and Dart

3
Quick Start Guide to Dart Programming: Create High-Performance Applications for the Web and Mobile

Rating is 4.8 out of 5

Quick Start Guide to Dart Programming: Create High-Performance Applications for the Web and Mobile

4
Dart: Up and Running: A New, Tool-Friendly Language for Structured Web Apps

Rating is 4.7 out of 5

Dart: Up and Running: A New, Tool-Friendly Language for Structured Web Apps

5
The Dart Programming Language

Rating is 4.6 out of 5

The Dart Programming Language

6
Mastering Dart: A Comprehensive Guide to Learn Dart Programming

Rating is 4.5 out of 5

Mastering Dart: A Comprehensive Guide to Learn Dart Programming

7
Flutter Cookbook: 100+ step-by-step recipes for building cross-platform, professional-grade apps with Flutter 3.10.x and Dart 3.x, 2nd Edition

Rating is 4.4 out of 5

Flutter Cookbook: 100+ step-by-step recipes for building cross-platform, professional-grade apps with Flutter 3.10.x and Dart 3.x, 2nd Edition

8
Flutter for Beginners: An introductory guide to building cross-platform mobile applications with Flutter 2.5 and Dart, 2nd Edition

Rating is 4.3 out of 5

Flutter for Beginners: An introductory guide to building cross-platform mobile applications with Flutter 2.5 and Dart, 2nd Edition


What is the difference between a class and an object in Dart?

In Dart, a class is a blueprint or a template for creating objects. It defines the behavior and properties that an object of that class type should have. A class can be considered as a user-defined data type.


On the other hand, an object is an instance of a class. It is a concrete representation created using the class blueprint. Objects have their own state (values of properties) and behavior (methods defined in the class). Multiple objects can be created from a single class.


To summarize:

  • Class: Blueprint or template that defines the properties and behavior of objects.
  • Object: Instance of a class that has its own state (properties) and behavior (methods).


In simple terms, a class defines what an object can do and what it is made of, while an object is the specific instance created based on that class with its own unique characteristics.


What is the role of the "this" keyword in object instantiation in Dart?

The "this" keyword in Dart is used to refer to the current instance of the class inside its own methods or constructors. It allows you to access the current instance variables, methods, and constructors of the class.


When used within a constructor, the "this" keyword refers to the current instance being created. It can be used to distinguish between local variables and instance variables with the same name. For example, "this.variableName" refers to the instance variable, while "variableName" refers to the local variable.


Here's an example to illustrate the usage of "this" in object instantiation in Dart:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
class Person {
  String name;
  
  Person(this.name); // Constructor
  
  void sayHello() {
    print('Hello, my name is ${this.name}.'); // Accessing instance variable using "this"
  }
}

void main() {
  Person person = Person('John');
  person.sayHello(); // Output: Hello, my name is John.
}


In the above example, the "this.name" inside the constructor assigns the value passed to the respective instance variable. The "this.name" inside the "sayHello()" method refers to the same instance variable and allows accessing it within the method.


By using the "this" keyword, you can clearly refer to the current instance and easily differentiate it from other local variables or parameters within a class.


How to instantiate an object in Dart?

To instantiate an object in Dart, follow these steps:

  1. Declare a class: Define a class using the class keyword, followed by the class name. Inside the class, you can define properties and methods.
1
2
3
class MyClass {
  // properties and methods
}


  1. Create an instance: To instantiate an object, use the new keyword followed by the class name, optionally followed by constructor arguments.
1
MyClass myObject = new MyClass();


Alternatively, you can omit the new keyword, as it is optional in Dart:

1
MyClass myObject = MyClass();


  1. Initialize object properties: After instantiating the object, you can access its properties and modify them if needed.
1
myObject.property = value;


Here's a complete example:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
class Person {
  String name;

  void sayHello() {
    print('Hello, my name is $name');
  }
}

void main() {
  Person person = Person();
  person.name = 'John Doe';
  person.sayHello(); // Output: Hello, my name is John Doe
}


In this example, an instance of the Person class is created, and its name property is set to 'John Doe'. The sayHello method is then called on the object, which prints a greeting message using the name property.

Facebook Twitter LinkedIn Whatsapp Pocket

Related Posts:

To invoke Dart code from Kotlin code, you can use the platform channel provided by Flutter. This allows communication between the Dart and Kotlin code in your app.First, define a method in your Dart code that you want to invoke from Kotlin. Then, create a Meth...
To send emails via Gmail from Dart, you can use the mailer package. Here are the steps to achieve this:Set up your Dart project by creating a new Dart file and importing the necessary packages. import 'package:mailer/mailer.dart'; import 'package:m...
Dart DevTools is a powerful tool for debugging Dart applications. It provides a comprehensive set of features to help you understand and analyze the behavior of your code during runtime. Here's an overview of how to use Dart DevTools for debugging:Installa...