시도, 켜기, 잡기, 그리고 마침내 Dart ?

13219 단어 indonesiadartexception
안녕하세요 www semua, di artikel ini saya coba membahas mengenai 예외 처리 di bahasa Dart.

Apa itu 예외 처리? ini merupakan cara computer untuk mengelola 오류. Jadi saat bikin program itu tidak semuanya akan berjalan mulus, nanti pasti ada error yang harus kita kelola.

Pada kondisi apa terjadi 오류 ? Umumnya 예외 처리 digunakan saat:
  • 티페 데이터 티닥 세스아이
  • 방법/속성 tidak ditemukan
  • 오류 saat membaca 파일/IO
  • Kesalahan jaringan saat melakukan 요청/응답
  • (...tambakan dikolom komentar yaa hehe)

  • Di Dart sendiri sudah disediakan fitur 예외 처리, dan caranya pun mirip seperti bahasa pemrograman lainnya. Konsep utama dari 예외 처리 adalah try-catch.

    시도 캐치


    try merupakan tahapan wal untuk menjalankan 예외 처리. 세당칸 catch 디구나칸 운툭 메네리마 에러냐.

    콘토 프로그램 :

    try {
      // Kode disini akan berjalan pertama kali
      print("Proses...");
      dynamic name = 20;
      print(name.length); // Awww error !
      print("Finish !"); // Kode tidak dijalankan
    } catch (err) {
      print("Terjadi kesalahan");
    }
    


    프로그램 diatas akan mengeluarkan error karena 속성 length itu tidak ada di 변수 name .

    Jadi cara kerjanya adalah pertama kode blok yang ada di dalam try akan dijalankan terlebih dahulu. Ketika terjadi error maka akan langsung lompat ke blok catch .

    산출:


    코드 프로그램 print("Finish !"); 티닥 디잘란칸.

    ~에



    Dari bahasa yang saya pelajari sepertinya, Dart ini membuat konsep baru pada 예외 처리, karena pada umumnya yang tersedia hanyalah try , catch , 단 finally 타피 디 다트 이니 에이다 on .

    자디 아파 itu on 파다 다트? on digunakan untuk mengelola error berdasarkan jenis errornya. Di kode sebelumnya kita hanya menggunakan try-catch saja yang dimana semua error akan masuk ke dalam catch .

    Kode program diatas kita jalankan ulang tapi dengan print yang berbeda:

    try {
      // Kode disini akan berjalan pertama kali
      print("Proses...");
      dynamic name = 20;
      print(name.length); // Awww error !
      print("Finish !"); // Kode tidak dijalankan
    } catch (err) {
      print("Terjadi kesalahan");
      print(err.toString()); // Kode program baru
    }
    


    아웃풋냐 아달라:


    Dari gambar diatas kita melihat ada error dengan jenis NoSuchMethodError . 다리dokumentasinya , 디툴리스칸:

    ...corresponding to a failed method call



    Artinya 오류 NoSuchMethodError adalah jenis error yang digunakan ketika method pada variabel tidak ada. Ini terjadi akibat 속성/방법 length tidak ada di variabel name .

    Terus diman on nya ?



    Nahh disini kita bisa 메네랍칸 키워드 on . 마카 프로그램냐 멘자디:

    try {
      // Kode disini akan berjalan pertama kali
      print("Proses...");
      dynamic name = 20;
      print(name.length); // Awww error !
      print("Finish !"); // Kode tidak dijalankan
    } on NoSuchMethodError {
      // Kode program yang dialam `on` ini yang akan dijalankan
      print("Method tidak ditemukan");
    } catch (err) {
      // Tidak dijalankan
      print("Terjadi kesalahan");
      print(err.toString());
    }
    


    산출:


    세카랑 양 켈루아르 아달라 Method tidak ditemukan 부칸 Terjadi kesalahan . 콕 이소? 아이투 카레나 제니스 오류 냐 아달라 NoSuchMethodError 자디코드 프로그램 양아다 디달람 on NoSuchMethodError itulah yang akan dijalankan.

    마지막으로


    finally akan dijalankan ketika semua proses selesai, baik itu ada error atau tidak.

    Contoh 프로그램 ketika ada 오류:

    try {
      // Kode disini akan berjalan pertama kali
      print("Proses...");
      dynamic name = 20;
      print(name.length); // Awww error !
      print("Finish !"); // Kode tidak dijalankan
    } catch (err) {
      print("Terjadi kesalahan");
    } finally {
      print("Proses try-catch selesai");
    }
    


    출력 프로그램:


    Contoh 코드 프로그램 ketika tidak ada 오류:

    try {
      // Kode disini akan berjalan pertama kali
      print("Proses...");
      dynamic name = 20;
      print(name);
      print("Finish !"); // Berjalan
    } catch (err) {
      print("Terjadi kesalahan");
    } finally {
      print("Proses try-catch selesai");
    }
    


    출력 프로그램:

    잠깐, kenapa harus pakai 드디어 ?



    Bukankah sama aja ketika kita tidak menggunakan finally ?


    Okee kita coba kalau tanpa 마침내 yaa. Jadi 프로그램:

    try {
      // Kode disini akan berjalan pertama kali
      print("Proses...");
      dynamic name = 20;
      print(name.length); // Awww error !
      print("Finish !"); // Kode tidak dijalankan
    } catch (err) {
      print("Terjadi kesalahan");
    }
    
    print("Proses try-catch selesai");
    


    출력 프로그램:


    Ehhh, iyaa juga yaaa...


    Eits, finally ini biasanya digunakan untuk membuat program kita lebih konsisten. 움뭄냐 디구나칸 케티카:
  • Selesai terhubung ke 데이터베이스
  • Membersihkan 메모리

  • 썸버 https://stackoverflow.com/a/16705037/9905881

    Okee deh mungkin itu saja, untuk pembahasan mengenai 오류/예외 처리 di bahasa Dart. Kalau kalian memiliki saran/kritikan silahkan komentar yaa 😉

    테리마 카시 수다 멤바카 ~

    좋은 웹페이지 즐겨찾기