Skip to content

Latest commit

 

History

History
111 lines (79 loc) · 1.68 KB

README.md

File metadata and controls

111 lines (79 loc) · 1.68 KB

Required Assert dan Try Catch

Required

mengubah optional parameter jadi wajib

Person({required this.name,  this.age = 0});

implementasi

void main(List<String> arguments) {
  Person p;
  p = Person();
  print(p.age);

}

class Person {
  final String name;
  final int age;

  // constructor
Person({required this.name,  this.age = 0});
}

kalo person ga diisi maka akan error

The named parameter 'name' is required, but there's no corresponding argument.

beda lagi klo implementasinya seperti ini

void main(List<String> arguments) {
  Person p;
  p = Person(name: 'feri');
  print(p.age);

}

class Person {
  final String name;
  final int age;

  // constructor
Person({required this.name,  this.age = 0});
}

jika kita lihat kita isi paramater yang dibutuhkan seperti ini

p = Person(name: 'feri');

Assert

assert digunakan untuk mengecek apakah bilai yang dimasukan sesuai yang diharapkan atau tidak, kemablian nya adalah pesan error

class Person {
  final String name;
  final int age;

  // constructor
  Person({required this.name, this.age = 0}){
    assert(name == String, 'name not string');
  }
}

dalam assert expresi harus mengembalikan boolean

try dan catch

untuk menangani error kita bisa pake try catch

 try {
    p = Person(name: 'pery');
    print(p.age);
  } catch (e) {
    print(e);
  }

lengkapnya

void main(List<String> arguments) {
  Person p;
  try {
    p = Person(name: 'pery');
    print(p.age);
  } catch (e) {
    print(e);
  }
}

Enum dan Cascade Notation <> Custom Sort dan ForEach