[{"data":1,"prerenderedAt":208},["ShallowReactive",2],{"site-header":3,"site-footer-license":37,"article-penulisan-komentar-pada-bahasa-java-with-latest":41},{"navigations":4},[5,20],{"collection":6,"item":7},"series",{"__typename":6,"title":8,"slug":9,"children_series":10},"Artikel","all",[11,14,17],{"title":12,"slug":13},"Algoritma dan Struktur Data","algoritma-struktur-data",{"title":15,"slug":16},"Konsep Dasar Pemrograman","konsep-dasar-pemrograman",{"title":18,"slug":19},"Kecerdasan Artifisial","kecerdasan-artifisial",{"collection":6,"item":21},{"__typename":6,"title":22,"slug":23,"children_series":24},"Tutorial","tutorial",[25,28,31,34],{"title":26,"slug":27},"Belajar Java","belajar-java",{"title":29,"slug":30},"Belajar Pascal","belajar-pascal",{"title":32,"slug":33},"Belajar Python","belajar-python",{"title":35,"slug":36},"Belajar Golang","belajar-golang",{"name":38,"url":39,"show":40},"CC BY-SA","https://creativecommons.org/licenses/by-sa/4.0/",false,{"article":42,"renderedBody":136,"renderedTakeaway":137,"latestArticles":138,"toc":190},{"id":43,"title":44,"slug":45,"excerpt":46,"published_at":47,"thumbnail_image":48,"tags":50,"reading_time":55,"takeway":56,"body":57,"authors":58,"series":64},"52","Penulisan Komentar pada Bahasa Java","penulisan-komentar-pada-bahasa-java","Java memiliki beberapa jenis komentar yaitu komentar satu baris, banyak baris, dan komentar dokumentasi.","2022-08-21T03:23:11.000Z",{"id":49},"720de22b-6faa-4d9f-b7be-97b17f20f130",[51,52,53,54],"java","komentar","syntax","best-practice",3,null,"Pada kesempatan kali ini kita akan membahas tentang komentar pada Java. Komentar ini penting untuk diketahui karena dapat berfungsi sebagai penjelas kode yang kita buat.\n\nJava memiliki beberapa jenis komentar, yaitu:\n\n* Komentar satu baris (single line comment)\n* Komentar banyak baris (multiline comment)\n* Komentar dokumentasi (doc comment)\n\nMari kita bahas lebih lanjut.\n\n## Tentang Komentar pada Bahasa Java\n\nKomentar atau ***comments*** merupakan blok kode yang tidak akan dibaca dan tidak akan dieksekusi oleh komputer. Walau begitu, komentar ini memiliki fungsi yang penting.\n\nKomentar berfungsi untuk membantu programmer mengerti maksud dari kode yang telah ditulis.\n\nKetika menulis program, pasti kita tahu betul apa maksud kode yang kita ketikkan. Tapi apa yang terjadi jika kode itu ditinggal selama sekian hari atau bahkan sekian tahun?\n\nKarena programmer juga manusia, dan manusia tidak luput dari lupa, besar kemungkinan kita akan lupa maksud dari kode yang kita tulis. Apalagi jika kode yang ditulis semrawut dengan penamaan yang tidak jelas. Wahh... susah 😞.\n\nDi sinilah pentingnya menulis komentar. Dengan komentar, kita bisa mendeskripsikan kode yang kita tulis dalam bahasa manusia yang tentu lebih manusiawi dari bahasa komputer.\n\nSelain untuk itu, komentar juga dapat berfungsi sebagai sarana debugging kode. Kita dapat memerintahkan komputer untuk mengabaikan baris kode tanpa perlu menghapusnya.\n\n## Penulisan Komentar pada Bahasa Java\n\nKita bisa menempatkan komentar di mana saja sesuka kita. Dalam komentar juga dapat ditulis apa saja yang kita inginkan. Tidak harus kode program. Menulis puisi dalam comment juga tidak masalah.\n\nUntuk menulis komentar, Java memiliki 3 sintaks yang berbeda, yaitu:\n\n### Komentar Satu Baris (*Single Line Comments*)\n\nSeperti namanya, komentar ini hanya bisa ditulis dalam satu baris saja.\n\nPenulisan komentar satu baris diawali dengan tanda `//`. Contoh:\n\n```java\n// Ini adalah komentar satu baris\n// Kode ini di luar blok kelas\n\npublic class HelloWorld {\n  // Kode ini di dalam blok kelas HelloWorld\n  public static void main(String args[]) {\n    // Kode ini di dalam blok fungsi main\n    System.out.println(\"Hello World!\"); // Baris ini mencetak \"Hello World\"\n  }\n}\n```\n\nJika kode tersebut dijalankan, pasti tidak akan ada perubahan dari sebelumnya. Ini karena komentar tidak dieksekusi oleh komputer.\n\n### Komentar Banyak Baris (*Multi Line Comments*)\n\nDengan *multi line comments* kita bisa menuliskan satu atau beberapa baris komentar dalam satu blok comment.\n\nAturan penulisannya adalah dibuka dengan `/*` dan ditutup dengan `*/`. Contoh:\n\n```java\n/* Ini adalah komentar banyak baris\nKode ini di luar blok kelas */\n\npublic class HelloWorld {\n  /*\n    Kode ini di dalam blok kelas HelloWorld\n    ini baris komentar baru\n    tetap dalam blok komentar yang sama\n  */\n  public static void main(String args[]) {\n    /*\n      Fungsi utama ini akan dipanggil pertama kali\n      oleh komputer. Kode di bawah bertujuan untuk\n      mencetak \"Hello World\" di layar konsol\n    */\n    System.out.println(\"Hello World!\");\n    /* multi line comment juga bisa digunakan untuk komentar satu baris */\n  }\n}\n```\n\n### Komentar Dokumentasi (*Doc Comments*)\n\nYang terakhir ada komentar dokumentasi.\n\nKomentar ini memiliki fungsi khusus untuk membuat dokumentasi kode yang kita buat. Java memiliki alat yang bernama **JavaDoc** untuk membuat dokumentasi dari komentar.\n\n*Doc comments* memiliki sintaks seperti *multi line comments*, hanya yang membedakan adalah pembukanya yaitu `/**` dan setiap baris komentar harus diawali tanda `*`. Contohnya:\n\n```java\n/**\n* Kelas utama program \"Hello World\"\n* @author Inva\n*/\npublic class HelloWorld {\n  /**\n  * Fungsi utama yang akan dipanggil oleh komputer\n  * Berfungsi untuk mencetak \u003Ccode>Hello World\u003Ccode> di layar konsol\n  * @params tidak ada parameter yang idpakai\n  * @return tidak mengembalikan apa-apa\n  */\n  public static void main(String args[]) {\n    System.out.println(\"Hello World!\");\n  }\n}\n```\n\nPenulisan komentar jenis ini tidak boleh sembarangan, ada spesifikasi tersendiri dari JavaDoc. Untuk lebih lanjut bisa di lihat di laman [panduan JavaDoc](https://www.oracle.com/technical-resources/articles/java/javadoc-tool.html).\n\nKarena fungsinya yang spesifik, kita tidak akan menggunakan komentar dokumentasi dalam Seri Belajar Java ini.\n\n## Selanjutnya\n\nKomentar memang tidak berguna di mata komputer, tetapi sangat membantu programmer membaca programnya. Jadi jangan sungkan untuk menulis komentar.\n\nPada kesempatan-kesempatan selanjutnya kita akan sering melihat komentar menyelingi kode yang kita buat, jadi jangan sampai bingung ya. Itu hanya penjelas, tidak ditulis pun tidak apa-apa.\n\nSelanjutnya kita akan membahas tentang sistem output pada bahasa Java.\n\nSelamat berkoding ria 👋",[59],{"authors_id":60},{"name":61,"slug":62,"role":63,"profile_picture":56},"Daffa Izzuddin","izzudd","Writer",{"id":65,"title":66,"slug":67,"articles":68,"parent_series":126},"21","Berkenalan dengan Java","java-intro",[69,80,88,97,100,109,118],{"id":70,"title":71,"slug":72,"excerpt":73,"thumbnail_image":74,"tags":76},"49","Berkenalan dengan Bahasa Java","berkenalan-dengan-bahasa-java","Java merupakan bahasa pemrograman tingkat tinggi dengan paradigma OOP. Bahasa ini punya slogan “write once, run anywhere”",{"id":75},"1b4c8254-328d-43a5-b489-6ed7c7da91a0",[51,77,78,79],"intro","pemrograman","dasar",{"id":81,"title":82,"slug":83,"excerpt":84,"thumbnail_image":85,"tags":87},"50","Membuat Program \"Hello World\" pada Java","membuat-program-hello-world-pada-java","Pada kesempatan kali ini kita akan membuat kode pertama kita, yaitu Hello World pada bahasa Java.",{"id":86},"d5ece737-b796-4209-9af8-1b7ce232d554",[51,23,79],{"id":89,"title":90,"slug":91,"excerpt":92,"thumbnail_image":93,"tags":95},"51","Mengenal Struktur Dasar Program Java","mengenal-struktur-dasar-program-java","Ibarat menulis skripsi, membuat program ternyata juga ada strukturnya. Dan struktur ini harus sesuai supaya tidak ditolak oleh sang komputer.",{"id":94},"dbfbf54c-b840-4c44-9f70-ddb80434a47d",[51,53,79,96],"konsep",{"id":43,"title":44,"slug":45,"excerpt":46,"thumbnail_image":98,"tags":99},{"id":49},[51,52,53,54],{"id":101,"title":102,"slug":103,"excerpt":104,"thumbnail_image":105,"tags":107},"53","Sistem Output pada Bahasa Java","sistem-output-pada-bahasa-java","Ketika membuat program \"Hello World\" kita sudah melihat method `System.out.println`. Selain method tersebut masih ada method lainnya, mari kita bahas.",{"id":106},"acd35b05-1d92-4944-a89a-d2e5b352f3be",[51,108,79],"input-output",{"id":110,"title":111,"slug":112,"excerpt":113,"thumbnail_image":114,"tags":116},"54","Variabel dan Literal pada Bahasa Java","variabel-dan-literal-pada-bahasa-java","Literal dan variabel merupakan komponen yang penting, karena 2 hal ini berhubungan langsung dengan data dan manipulasinya.",{"id":115},"b3cfdc00-853e-424c-8a85-20c13d627d98",[51,117,96,79],"variabel",{"id":119,"title":120,"slug":121,"excerpt":122,"thumbnail_image":123,"tags":125},"55","Sistem Input pada Bahasa Java","sistem-input-pada-bahasa-java","Pada bahasa Java, sistem input dilayani oleh objek yang bernama Scanner. Objek ini memiliki banyak method yang dapat digunakan untuk sistem input.",{"id":124},"3cdb0187-3373-401c-aeaf-abeda8170a90",[51,108,79],{"id":127,"title":26,"slug":27,"parent_series":128,"children_series":130},"13",{"id":129,"title":22,"slug":23,"parent_series":56},"1",[131,132],{"id":65,"title":66,"slug":67,"cover_image":56},{"id":133,"title":134,"slug":135,"cover_image":56},"22","Variabel, Tipe Data, dan Operasi","java-variabel-tipe-data","\u003Cp>Pada kesempatan kali ini kita akan membahas tentang komentar pada Java. Komentar ini penting untuk diketahui karena dapat berfungsi sebagai penjelas kode yang kita buat.\u003C/p>\n\u003Cp>Java memiliki beberapa jenis komentar, yaitu:\u003C/p>\n\u003Cul>\n\u003Cli>Komentar satu baris (single line comment)\u003C/li>\n\u003Cli>Komentar banyak baris (multiline comment)\u003C/li>\n\u003Cli>Komentar dokumentasi (doc comment)\u003C/li>\n\u003C/ul>\n\u003Cp>Mari kita bahas lebih lanjut.\u003C/p>\n\u003Ch2 id=\"tentang-komentar-pada-bahasa-java\">Tentang Komentar pada Bahasa Java\u003C/h2>\n\u003Cp>Komentar atau \u003Cem>\u003Cstrong>comments\u003C/strong>\u003C/em> merupakan blok kode yang tidak akan dibaca dan tidak akan dieksekusi oleh komputer. Walau begitu, komentar ini memiliki fungsi yang penting.\u003C/p>\n\u003Cp>Komentar berfungsi untuk membantu programmer mengerti maksud dari kode yang telah ditulis.\u003C/p>\n\u003Cp>Ketika menulis program, pasti kita tahu betul apa maksud kode yang kita ketikkan. Tapi apa yang terjadi jika kode itu ditinggal selama sekian hari atau bahkan sekian tahun?\u003C/p>\n\u003Cp>Karena programmer juga manusia, dan manusia tidak luput dari lupa, besar kemungkinan kita akan lupa maksud dari kode yang kita tulis. Apalagi jika kode yang ditulis semrawut dengan penamaan yang tidak jelas. Wahh... susah 😞.\u003C/p>\n\u003Cp>Di sinilah pentingnya menulis komentar. Dengan komentar, kita bisa mendeskripsikan kode yang kita tulis dalam bahasa manusia yang tentu lebih manusiawi dari bahasa komputer.\u003C/p>\n\u003Cp>Selain untuk itu, komentar juga dapat berfungsi sebagai sarana debugging kode. Kita dapat memerintahkan komputer untuk mengabaikan baris kode tanpa perlu menghapusnya.\u003C/p>\n\u003Ch2 id=\"penulisan-komentar-pada-bahasa-java\">Penulisan Komentar pada Bahasa Java\u003C/h2>\n\u003Cp>Kita bisa menempatkan komentar di mana saja sesuka kita. Dalam komentar juga dapat ditulis apa saja yang kita inginkan. Tidak harus kode program. Menulis puisi dalam comment juga tidak masalah.\u003C/p>\n\u003Cp>Untuk menulis komentar, Java memiliki 3 sintaks yang berbeda, yaitu:\u003C/p>\n\u003Ch3 id=\"komentar-satu-baris-single-line-comments\">Komentar Satu Baris (\u003Cem>Single Line Comments\u003C/em>)\u003C/h3>\n\u003Cp>Seperti namanya, komentar ini hanya bisa ditulis dalam satu baris saja.\u003C/p>\n\u003Cp>Penulisan komentar satu baris diawali dengan tanda \u003Ccode>//\u003C/code>. Contoh:\u003C/p>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">JAVA\u003C/span>\n    \u003C/div>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"%2F%2F%20Ini%20adalah%20komentar%20satu%20baris%0A%2F%2F%20Kode%20ini%20di%20luar%20blok%20kelas%0A%0Apublic%20class%20HelloWorld%20%7B%0A%20%20%2F%2F%20Kode%20ini%20di%20dalam%20blok%20kelas%20HelloWorld%0A%20%20public%20static%20void%20main(String%20args%5B%5D)%20%7B%0A%20%20%20%20%2F%2F%20Kode%20ini%20di%20dalam%20blok%20fungsi%20main%0A%20%20%20%20System.out.println(%22Hello%20World!%22)%3B%20%2F%2F%20Baris%20ini%20mencetak%20%22Hello%20World%22%0A%20%20%7D%0A%7D\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C/path>\n      \u003C/svg>\n      \u003Cspan class=\"copy-text\">Copy\u003C/span>\n    \u003C/button>\n  \u003C/div>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>// Ini adalah komentar satu baris\n// Kode ini di luar blok kelas\n\npublic class HelloWorld {\n  // Kode ini di dalam blok kelas HelloWorld\n  public static void main(String args[]) {\n    // Kode ini di dalam blok fungsi main\n    System.out.println(\"Hello World!\"); // Baris ini mencetak \"Hello World\"\n  }\n}\u003C/code>\u003C/pre>\n  \u003C/div>\n\u003C/div>\u003Cp>Jika kode tersebut dijalankan, pasti tidak akan ada perubahan dari sebelumnya. Ini karena komentar tidak dieksekusi oleh komputer.\u003C/p>\n\u003Ch3 id=\"komentar-banyak-baris-multi-line-comments\">Komentar Banyak Baris (\u003Cem>Multi Line Comments\u003C/em>)\u003C/h3>\n\u003Cp>Dengan \u003Cem>multi line comments\u003C/em> kita bisa menuliskan satu atau beberapa baris komentar dalam satu blok comment.\u003C/p>\n\u003Cp>Aturan penulisannya adalah dibuka dengan \u003Ccode>/*\u003C/code> dan ditutup dengan \u003Ccode>*/\u003C/code>. Contoh:\u003C/p>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">JAVA\u003C/span>\n    \u003C/div>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"%2F*%20Ini%20adalah%20komentar%20banyak%20baris%0AKode%20ini%20di%20luar%20blok%20kelas%20*%2F%0A%0Apublic%20class%20HelloWorld%20%7B%0A%20%20%2F*%0A%20%20%20%20Kode%20ini%20di%20dalam%20blok%20kelas%20HelloWorld%0A%20%20%20%20ini%20baris%20komentar%20baru%0A%20%20%20%20tetap%20dalam%20blok%20komentar%20yang%20sama%0A%20%20*%2F%0A%20%20public%20static%20void%20main(String%20args%5B%5D)%20%7B%0A%20%20%20%20%2F*%0A%20%20%20%20%20%20Fungsi%20utama%20ini%20akan%20dipanggil%20pertama%20kali%0A%20%20%20%20%20%20oleh%20komputer.%20Kode%20di%20bawah%20bertujuan%20untuk%0A%20%20%20%20%20%20mencetak%20%22Hello%20World%22%20di%20layar%20konsol%0A%20%20%20%20*%2F%0A%20%20%20%20System.out.println(%22Hello%20World!%22)%3B%0A%20%20%20%20%2F*%20multi%20line%20comment%20juga%20bisa%20digunakan%20untuk%20komentar%20satu%20baris%20*%2F%0A%20%20%7D%0A%7D\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C/path>\n      \u003C/svg>\n      \u003Cspan class=\"copy-text\">Copy\u003C/span>\n    \u003C/button>\n  \u003C/div>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>/* Ini adalah komentar banyak baris\nKode ini di luar blok kelas */\n\npublic class HelloWorld {\n  /*\n    Kode ini di dalam blok kelas HelloWorld\n    ini baris komentar baru\n    tetap dalam blok komentar yang sama\n  */\n  public static void main(String args[]) {\n    /*\n      Fungsi utama ini akan dipanggil pertama kali\n      oleh komputer. Kode di bawah bertujuan untuk\n      mencetak \"Hello World\" di layar konsol\n    */\n    System.out.println(\"Hello World!\");\n    /* multi line comment juga bisa digunakan untuk komentar satu baris */\n  }\n}\u003C/code>\u003C/pre>\n  \u003C/div>\n\u003C/div>\u003Ch3 id=\"komentar-dokumentasi-doc-comments\">Komentar Dokumentasi (\u003Cem>Doc Comments\u003C/em>)\u003C/h3>\n\u003Cp>Yang terakhir ada komentar dokumentasi.\u003C/p>\n\u003Cp>Komentar ini memiliki fungsi khusus untuk membuat dokumentasi kode yang kita buat. Java memiliki alat yang bernama \u003Cstrong>JavaDoc\u003C/strong> untuk membuat dokumentasi dari komentar.\u003C/p>\n\u003Cp>\u003Cem>Doc comments\u003C/em> memiliki sintaks seperti \u003Cem>multi line comments\u003C/em>, hanya yang membedakan adalah pembukanya yaitu \u003Ccode>/**\u003C/code> dan setiap baris komentar harus diawali tanda \u003Ccode>*\u003C/code>. Contohnya:\u003C/p>\n\n\u003Cdiv class=\"code-block-wrapper my-6 not-prose rounded-xl border-2 border-black dark:border-gray-600 shadow-neo overflow-hidden bg-[#24292e] text-[#e1e4e8] transition-all\">\n  \u003Cdiv class=\"code-block-header flex items-center justify-between px-4 py-2.5 bg-[#1f2428] border-b-2 border-black dark:border-gray-600 font-mono text-xs font-bold text-gray-300 select-none\">\n    \u003Cdiv class=\"flex items-center gap-2\">\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ff5f56] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black/40 inline-block\">\u003C/span>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">JAVA\u003C/span>\n    \u003C/div>\n    \u003Cbutton type=\"button\" class=\"copy-code-btn flex items-center gap-1.5 px-3 py-1 text-xs font-bold bg-[#2f363d] text-gray-200 border-2 border-black dark:border-gray-500 rounded-lg shadow-neo-sm hover:translate-x-0.5 hover:translate-y-0.5 hover:shadow-none hover:bg-gray-700 transition-all cursor-pointer\" data-code=\"%2F**%0A*%20Kelas%20utama%20program%20%22Hello%20World%22%0A*%20%40author%20Inva%0A*%2F%0Apublic%20class%20HelloWorld%20%7B%0A%20%20%2F**%0A%20%20*%20Fungsi%20utama%20yang%20akan%20dipanggil%20oleh%20komputer%0A%20%20*%20Berfungsi%20untuk%20mencetak%20%3Ccode%3EHello%20World%3Ccode%3E%20di%20layar%20konsol%0A%20%20*%20%40params%20tidak%20ada%20parameter%20yang%20idpakai%0A%20%20*%20%40return%20tidak%20mengembalikan%20apa-apa%0A%20%20*%2F%0A%20%20public%20static%20void%20main(String%20args%5B%5D)%20%7B%0A%20%20%20%20System.out.println(%22Hello%20World!%22)%3B%0A%20%20%7D%0A%7D\" title=\"Salin kode\">\n      \u003Csvg class=\"w-3.5 h-3.5 copy-icon-svg\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n        \u003Cpath stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\">\u003C/path>\n      \u003C/svg>\n      \u003Cspan class=\"copy-text\">Copy\u003C/span>\n    \u003C/button>\n  \u003C/div>\n  \u003Cdiv class=\"code-block-content p-4 overflow-x-auto text-sm font-mono leading-relaxed bg-[#24292e]\">\n    \u003Cpre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\">\u003Ccode>/**\n* Kelas utama program \"Hello World\"\n* @author Inva\n*/\npublic class HelloWorld {\n  /**\n  * Fungsi utama yang akan dipanggil oleh komputer\n  * Berfungsi untuk mencetak &lt;code&gt;Hello World&lt;code&gt; di layar konsol\n  * @params tidak ada parameter yang idpakai\n  * @return tidak mengembalikan apa-apa\n  */\n  public static void main(String args[]) {\n    System.out.println(\"Hello World!\");\n  }\n}\u003C/code>\u003C/pre>\n  \u003C/div>\n\u003C/div>\u003Cp>Penulisan komentar jenis ini tidak boleh sembarangan, ada spesifikasi tersendiri dari JavaDoc. Untuk lebih lanjut bisa di lihat di laman \u003Ca href=\"https://www.oracle.com/technical-resources/articles/java/javadoc-tool.html\">panduan JavaDoc\u003C/a>.\u003C/p>\n\u003Cp>Karena fungsinya yang spesifik, kita tidak akan menggunakan komentar dokumentasi dalam Seri Belajar Java ini.\u003C/p>\n\u003Ch2 id=\"selanjutnya\">Selanjutnya\u003C/h2>\n\u003Cp>Komentar memang tidak berguna di mata komputer, tetapi sangat membantu programmer membaca programnya. Jadi jangan sungkan untuk menulis komentar.\u003C/p>\n\u003Cp>Pada kesempatan-kesempatan selanjutnya kita akan sering melihat komentar menyelingi kode yang kita buat, jadi jangan sampai bingung ya. Itu hanya penjelas, tidak ditulis pun tidak apa-apa.\u003C/p>\n\u003Cp>Selanjutnya kita akan membahas tentang sistem output pada bahasa Java.\u003C/p>\n\u003Cp>Selamat berkoding ria 👋\u003C/p>\n","",[139,152,167,179],{"id":140,"title":141,"slug":142,"excerpt":143,"thumbnail_image":144,"tags":146},"46","Mengapa C Mulai Ditinggalkan: Duel Filosofi Keamanan Rust vs Kesederhanaan Zig","mengapa-c-mulai-ditinggalkan-duel-filosofi-rust-vs-zig","Pernah denger kalau sekitar 70% celah keamanan kritis software modern itu asalnya dari bahasa C? Iya, bahasa yang udah jadi fondasi internet ini 😅. Yuk, kita bedah duel filosofi Rust vs Zig dan cari tahu mana yang pas buat proyek kalian!",{"id":145},"1942a5c9-c1f6-476d-9913-768f78d9d8eb",[147,148,149,150,151],"system-programming","rust","zig","c","memory-safety",{"id":153,"title":154,"slug":155,"excerpt":156,"thumbnail_image":157,"tags":159},"45","Rate Limiting Algorithms: Token Bucket vs Leaky Bucket vs Sliding Window","rate-limiting-algorithms-token-bucket-leaky-bucket-sliding-window","Udah tahu kenapa *rate limiting* itu wajib, tapi masih bingung beda Token Bucket, Leaky Bucket, Fixed Window, dan Sliding Window? Yuk, kita adu empat algoritma ini bareng-bareng dan cari tahu mana yang paling pas buat API kalian!",{"id":158},"0e0ed26d-20c6-443c-bde1-4a6200f6f801",[160,161,162,163,164,165,166],"backend","system-design","rate-limiting","redis","api-gateway","architecture","traffict-management",{"id":168,"title":169,"slug":170,"excerpt":171,"thumbnail_image":172,"tags":174},"44","Transactional Outbox Pattern: Solusi Konsistensi Database dan Message Broker Tanpa 2PC","transactional-outbox-pattern-konsistensi-database-message-broker","Pernah nggak kalian lihat pesanan udah masuk database, tapi email konfirmasinya nggak pernah kekirim? Itu gejala *dual-write problem*. Yuk, kita bedah Transactional Outbox Pattern biar data dan *event* kalian nggak lagi berselisih paham!",{"id":173},"e3c617fd-1486-4b82-b937-94fbec846c77",[160,175,165,176,177,161,178],"microservices","database","message-broker","postgresql",{"id":180,"title":181,"slug":182,"excerpt":183,"thumbnail_image":184,"tags":186},"43","Dead Letter Queue (DLQ) & Retry Policy: Menyelamatkan Pesan Nyasar di RabbitMQ Tanpa Bikin Worker Macet","dead-letter-queue-retry-policy-rabbitmq-resilient-messaging","Pernah nggak sih, *worker* kalian nolak satu pesan terus-terusan sampai CPU melonjak 100%? Itu namanya *poison message loop*, jebakan klasik di RabbitMQ. Yuk, kita bahas cara pasang *retry policy* dan *dead letter queue* yang bener!",{"id":185},"6c0a7ead-4841-4073-b29e-df7ae0f2aa3c",[187,177,160,165,175,188,189],"rabbitmq","async","python",[191,195,196,199,202,205],{"text":192,"depth":193,"id":194},"Tentang Komentar pada Bahasa Java",2,"tentang-komentar-pada-bahasa-java",{"text":44,"depth":193,"id":45},{"text":197,"depth":55,"id":198},"Komentar Satu Baris (Single Line Comments)","komentar-satu-baris-single-line-comments",{"text":200,"depth":55,"id":201},"Komentar Banyak Baris (Multi Line Comments)","komentar-banyak-baris-multi-line-comments",{"text":203,"depth":55,"id":204},"Komentar Dokumentasi (Doc Comments)","komentar-dokumentasi-doc-comments",{"text":206,"depth":193,"id":207},"Selanjutnya","selanjutnya",1791045069385]