📜  Dart的实例和类方法

📅  最后修改于: 2021-09-02 05:18:55             🧑  作者: Mango

Dart为我们提供了创建自己的方法的能力。创建方法是为了在类中执行某些操作。方法帮助我们去除程序的复杂性。必须注意的是,方法可能会也可能不会返回任何值,并且它可能会也可能不会接受任何参数作为输入。类中的方法可以是对象方法或类方法。

Dart有两种类型的方法:

  1. 实例方法
  2. 类方法

Dart的实例方法:

除非方法被声明为静态方法,否则它被归类为类中的实例方法。他们被允许访问实例变量。要调用此类的方法,您必须首先创建一个对象。

句法:

// Declaring instance method
return_type method_name() {

  // Body of method
}

// Creating object
class_name object_name = new class_name();

// Calling instance method
object_name.method_name();

在Dart创建实例方法 –

// Creating Class named Gfg
class Gfg {
    // Declaring instance variable
    int a;
    int b;
  
    // Creating instance method name 
    // sum with two parameters
    void sum(int c, int d)
    {
        // Using this to set the values of the
        // input to instance variable
        this.a = c;
        this.b = d;
  
        // Printing the result
        print('Sum of numbers is ${a + b}');
    }
}
  
void main()
{
    // Creating instance of the class Gfg(Creating Object)
    Gfg geek = new Gfg();
  
    // Calling the method sum with the use of object
    geek.sum(21, 12);
}

输出:

Sum of numbers is 33

Dart的类方法:

所有用 static 关键字声明的方法都称为类方法。它们不能访问非静态变量,也不能调用类的非静态方法。需要注意的是,与实例方法不同的是,类方法可以通过类名直接调用。

句法:

// Creating class method
static return_type method_name() {

   // Body of method
}

// Calling class method
class_name.method_name();

在Dart创建类方法 –

// Creating Class named Gfg
class Gfg {
  
    // Creating a class method name
    // sum with two parameters
    static void sum(int c, int d)
    {
        // Printing the result
        print('Sum of numbers is ${c + d}');
    }
}
  
void main()
{
    // Calling the method sum without the
    // use of object i.e with class name
    Gfg.sum(11, 32);
}

输出:

Sum of numbers is 43