[{"data":1,"prerenderedAt":348},["ShallowReactive",2],{"tag-labels":3,"site-header":4,"article-penulisan-komentar-pada-bahasa-java-id":72},{},{"featuredPost":5,"navigations":29},{"id":6,"title":7,"title_en":8,"slug":9,"excerpt":10,"excerpt_en":11,"has_translation":12,"published_at":13,"reading_time":14,"hidden_from_listing":15,"tags":16,"thumbnail_image":21,"og_image":22,"series":23,"authors":28},110,"Ketika Pilih Framework Cuma Biar Kelihatan Beda","When You Pick a Framework Just to Look Different","ketika-pilih-framework-cuma-biar-kelihatan-beda","Terakhir kali kamu milih framework atau library baru, itu karena masalahmu butuh alat itu, atau karena alatnya kedengaran keren dan belum banyak yang pakai? Pertanyaan ini nggak enak dijawab. Soalnya keputusan teknologi sering diambil dengan alasan yang nggak pernah ditulis di dokumen teknis mana pun.","The last time you chose a new framework or library, was it because your problem needed that tool, or because it sounded cool and few people around you were using it? That question is uncomfortable. Technology decisions are often made for reasons that never appear in any technical document.",true,"2026-10-06T15:25:21.000Z",5,false,[17,18,19,20],"karier","framework","opini","pengalaman",null,"\u002Fog\u002Fketika-pilih-framework-cuma-biar-kelihatan-beda.png",{"id":24,"title":25,"title_en":26,"slug":27},9,"Artikel","Articles","all",[],[30,46,67],{"collection":31,"item":32},"series",{"__typename":31,"title":25,"title_en":26,"slug":27,"children_series":33},[34,38,42],{"title":35,"title_en":36,"slug":37},"Kecerdasan Artifisial","Artificial Intelligence","kecerdasan-artifisial",{"title":39,"title_en":40,"slug":41},"Konsep Dasar Pemrograman","Programming Fundamentals","konsep-dasar-pemrograman",{"title":43,"title_en":44,"slug":45},"Algoritma dan Struktur Data","Algorithms and Data Structures","algoritma-struktur-data",{"collection":31,"item":47},{"__typename":31,"title":48,"title_en":48,"slug":49,"children_series":50},"Tutorial","tutorial",[51,55,59,63],{"title":52,"title_en":53,"slug":54},"Belajar Python","Learning Python","belajar-python",{"title":56,"title_en":57,"slug":58},"Belajar Golang","Learning Go","belajar-golang",{"title":60,"title_en":61,"slug":62},"Belajar Java","Learning Java","belajar-java",{"title":64,"title_en":65,"slug":66},"Belajar Pascal","Learning Pascal","belajar-pascal",{"collection":31,"item":68},{"__typename":31,"title":69,"title_en":69,"slug":70,"children_series":71},"Lab","lab",[],{"article":73,"renderedBody":228,"renderedTakeaway":229,"latestArticles":230,"toc":330},{"id":74,"title":75,"title_en":76,"slug":77,"excerpt":78,"excerpt_en":79,"has_translation":12,"published_at":80,"reading_time":81,"hidden_from_listing":15,"tags":82,"thumbnail_image":21,"og_image":87,"series":88,"authors":221,"body_locale":224,"available_locales":225,"body":227,"takeway":21,"prerequisite":21},52,"Penulisan Komentar pada Bahasa Java","Writing Comments in the Java Language","penulisan-komentar-pada-bahasa-java","Java memiliki beberapa jenis komentar yaitu komentar satu baris, banyak baris, dan komentar dokumentasi.","Java has several kinds of comments: single line comments, multiline comments, and doc comments.","2022-08-21T03:23:11.000Z",3,[83,84,85,86],"java","komentar","syntax","best-practice","\u002Fog\u002Fpenulisan-komentar-pada-bahasa-java.png",{"id":89,"title":90,"title_en":91,"slug":92,"description":93,"description_en":94,"articles":95,"children_series":210,"parent_series":211},21,"Berkenalan dengan Java","Getting Started with Java","java-intro","Kenalan sama Java dari nol: bikin program pertama, paham struktur dasarnya, sampai bisa nerima input dan nampilin output.","Meet Java from scratch: your first program, how the pieces fit together, and how to read input and print output.",[96,110,131,144,160,165,180,196],{"id":97,"title":98,"title_en":99,"slug":100,"excerpt":101,"excerpt_en":102,"has_translation":12,"published_at":103,"reading_time":14,"hidden_from_listing":15,"tags":104,"thumbnail_image":21,"og_image":107,"series":108,"authors":109},14,"Instalasi Java dengan Visual Studio Code","Installing Java with Visual Studio Code","instalasi-java-dengan-visual-studio-code","Mau belajar ngoding Java tapi spek laptop pas-pasan buat buka IDE berat? Yuk, cari tahu cara setup VS Code biar ngoding Java tetap lancar dan enteng!","Want to learn Java but your laptop barely handles a heavy IDE? Here's how to set up VS Code so writing Java stays light and smooth.","2026-06-15T02:37:24.974Z",[105,83,106],"howto","editor","\u002Fog\u002Finstalasi-java-dengan-visual-studio-code.png",{"id":89,"title":90,"title_en":91,"slug":92},[],{"id":111,"title":112,"title_en":113,"slug":114,"excerpt":115,"excerpt_en":116,"has_translation":12,"published_at":117,"reading_time":81,"hidden_from_listing":15,"tags":118,"thumbnail_image":21,"og_image":122,"series":123,"authors":124},49,"Berkenalan dengan Bahasa Java","Getting to Know the Java Language","berkenalan-dengan-bahasa-java","Java merupakan bahasa pemrograman tingkat tinggi dengan paradigma OOP. Bahasa ini punya slogan “write once, run anywhere”","Java is a high-level programming language built on the OOP paradigm, and it carries the slogan “write once, run anywhere”.","2022-08-11T00:00:00.000Z",[83,119,120,121],"intro","pemrograman","dasar","\u002Fog\u002Fberkenalan-dengan-bahasa-java.png",{"id":89,"title":90,"title_en":91,"slug":92},[125],{"authors_id":126},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},1,"Daffa Izzuddin","izzudd","Writer",{"id":132,"title":133,"title_en":134,"slug":135,"excerpt":136,"excerpt_en":137,"has_translation":12,"published_at":117,"reading_time":127,"hidden_from_listing":15,"tags":138,"thumbnail_image":21,"og_image":139,"series":140,"authors":141},50,"Membuat Program \"Hello World\" pada Java","Building a \"Hello World\" Program in Java","membuat-program-hello-world-pada-java","Pada kesempatan kali ini kita akan membuat kode pertama kita, yaitu Hello World pada bahasa Java.","This time we build our first program, Hello World, in the Java language.",[83,49,121],"\u002Fog\u002Fmembuat-program-hello-world-pada-java.png",{"id":89,"title":90,"title_en":91,"slug":92},[142],{"authors_id":143},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":145,"title":146,"title_en":147,"slug":148,"excerpt":149,"excerpt_en":150,"has_translation":12,"published_at":151,"reading_time":152,"hidden_from_listing":15,"tags":153,"thumbnail_image":21,"og_image":155,"series":156,"authors":157},51,"Mengenal Struktur Dasar Program Java","Understanding the Basic Structure of a Java Program","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.","Writing a program has a structure, the way writing a thesis does. And that structure has to be right so the computer doesn't reject it.","2022-08-12T09:43:57.000Z",4,[83,85,121,154],"konsep","\u002Fog\u002Fmengenal-struktur-dasar-program-java.png",{"id":89,"title":90,"title_en":91,"slug":92},[158],{"authors_id":159},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":74,"title":75,"title_en":76,"slug":77,"excerpt":78,"excerpt_en":79,"has_translation":12,"published_at":80,"reading_time":81,"hidden_from_listing":15,"tags":82,"thumbnail_image":21,"og_image":87,"series":161,"authors":162},{"id":89,"title":90,"title_en":91,"slug":92},[163],{"authors_id":164},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":166,"title":167,"title_en":168,"slug":169,"excerpt":170,"excerpt_en":171,"has_translation":12,"published_at":172,"reading_time":14,"hidden_from_listing":15,"tags":173,"thumbnail_image":21,"og_image":175,"series":176,"authors":177},53,"Sistem Output pada Bahasa Java","The Output System in the Java Language","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.","When we built the \"Hello World\" program we already met the `System.out.println` method. Java has other output methods too, and this piece goes through them.","2022-08-23T00:00:00.000Z",[83,174,121],"input-output","\u002Fog\u002Fsistem-output-pada-bahasa-java.png",{"id":89,"title":90,"title_en":91,"slug":92},[178],{"authors_id":179},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":181,"title":182,"title_en":183,"slug":184,"excerpt":185,"excerpt_en":186,"has_translation":12,"published_at":187,"reading_time":188,"hidden_from_listing":15,"tags":189,"thumbnail_image":21,"og_image":191,"series":192,"authors":193},54,"Variabel dan Literal pada Bahasa Java","Variables and Literals in the Java Language","variabel-dan-literal-pada-bahasa-java","Literal dan variabel merupakan komponen yang penting, karena 2 hal ini berhubungan langsung dengan data dan manipulasinya.","Literals and variables are important components, because these 2 things connect directly to data and how you manipulate it.","2022-09-07T07:33:30.000Z",7,[83,190,154,121],"variabel","\u002Fog\u002Fvariabel-dan-literal-pada-bahasa-java.png",{"id":89,"title":90,"title_en":91,"slug":92},[194],{"authors_id":195},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":197,"title":198,"title_en":199,"slug":200,"excerpt":201,"excerpt_en":202,"has_translation":12,"published_at":203,"reading_time":188,"hidden_from_listing":15,"tags":204,"thumbnail_image":21,"og_image":205,"series":206,"authors":207},55,"Sistem Input pada Bahasa Java","The Input System in the Java Language","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.","In Java, the input system is handled by an object named Scanner, and that object has plenty of methods you can use for input.","2022-09-27T14:15:59.000Z",[83,174,121],"\u002Fog\u002Fsistem-input-pada-bahasa-java.png",{"id":89,"title":90,"title_en":91,"slug":92},[208],{"authors_id":209},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},[],{"id":212,"title":60,"title_en":61,"slug":62,"parent_series":213,"children_series":214},13,{"id":127,"title":48,"title_en":48,"slug":49},[215,216],{"id":89,"title":90,"title_en":91,"slug":92,"cover_image":21},{"id":217,"title":218,"title_en":219,"slug":220,"cover_image":21},22,"Variabel, Tipe Data, dan Operasi","Variables, Types, and Operations","java-variabel-tipe-data",[222],{"authors_id":223},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},"id",[226,224],"en","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 `\u002F\u002F`. Contoh:\n\n```java\n\u002F\u002F Ini adalah komentar satu baris\n\u002F\u002F Kode ini di luar blok kelas\n\npublic class HelloWorld {\n  \u002F\u002F Kode ini di dalam blok kelas HelloWorld\n  public static void main(String args[]) {\n    \u002F\u002F Kode ini di dalam blok fungsi main\n    System.out.println(\"Hello World!\"); \u002F\u002F 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 `\u002F*` dan ditutup dengan `*\u002F`. Contoh:\n\n```java\n\u002F* Ini adalah komentar banyak baris\nKode ini di luar blok kelas *\u002F\n\npublic class HelloWorld {\n  \u002F*\n    Kode ini di dalam blok kelas HelloWorld\n    ini baris komentar baru\n    tetap dalam blok komentar yang sama\n  *\u002F\n  public static void main(String args[]) {\n    \u002F*\n      Fungsi utama ini akan dipanggil pertama kali\n      oleh komputer. Kode di bawah bertujuan untuk\n      mencetak \"Hello World\" di layar konsol\n    *\u002F\n    System.out.println(\"Hello World!\");\n    \u002F* multi line comment juga bisa digunakan untuk komentar satu baris *\u002F\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 `\u002F**` dan setiap baris komentar harus diawali tanda `*`. Contohnya:\n\n```java\n\u002F**\n* Kelas utama program \"Hello World\"\n* @author Inva\n*\u002F\npublic class HelloWorld {\n  \u002F**\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  *\u002F\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:\u002F\u002Fwww.oracle.com\u002Ftechnical-resources\u002Farticles\u002Fjava\u002Fjavadoc-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 👋\n","\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\u002Fp>\n\u003Cp>Java memiliki beberapa jenis komentar, yaitu:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Komentar satu baris (single line comment)\u003C\u002Fli>\n\u003Cli>Komentar banyak baris (multiline comment)\u003C\u002Fli>\n\u003Cli>Komentar dokumentasi (doc comment)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Mari kita bahas lebih lanjut.\u003C\u002Fp>\n\u003Ch2 id=\"tentang-komentar-pada-bahasa-java\">Tentang Komentar pada Bahasa Java\u003C\u002Fh2>\n\u003Cp>Komentar atau \u003Cem>\u003Cstrong>comments\u003C\u002Fstrong>\u003C\u002Fem> merupakan blok kode yang tidak akan dibaca dan tidak akan dieksekusi oleh komputer. Walau begitu, komentar ini memiliki fungsi yang penting.\u003C\u002Fp>\n\u003Cp>Komentar berfungsi untuk membantu programmer mengerti maksud dari kode yang telah ditulis.\u003C\u002Fp>\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\u002Fp>\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\u002Fp>\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\u002Fp>\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\u002Fp>\n\u003Ch2 id=\"penulisan-komentar-pada-bahasa-java\">Penulisan Komentar pada Bahasa Java\u003C\u002Fh2>\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\u002Fp>\n\u003Cp>Untuk menulis komentar, Java memiliki 3 sintaks yang berbeda, yaitu:\u003C\u002Fp>\n\u003Ch3 id=\"komentar-satu-baris-single-line-comments\">Komentar Satu Baris (\u003Cem>Single Line Comments\u003C\u002Fem>)\u003C\u002Fh3>\n\u003Cp>Seperti namanya, komentar ini hanya bisa ditulis dalam satu baris saja.\u003C\u002Fp>\n\u003Cp>Penulisan komentar satu baris diawali dengan tanda \u003Ccode>\u002F\u002F\u003C\u002Fcode>. Contoh:\u003C\u002Fp>\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\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">JAVA\u003C\u002Fspan>\n    \u003C\u002Fdiv>\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\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\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>\u002F\u002F Ini adalah komentar satu baris\n\u002F\u002F Kode ini di luar blok kelas\n\npublic class HelloWorld {\n  \u002F\u002F Kode ini di dalam blok kelas HelloWorld\n  public static void main(String args[]) {\n    \u002F\u002F Kode ini di dalam blok fungsi main\n    System.out.println(\"Hello World!\"); \u002F\u002F Baris ini mencetak \"Hello World\"\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Jika kode tersebut dijalankan, pasti tidak akan ada perubahan dari sebelumnya. Ini karena komentar tidak dieksekusi oleh komputer.\u003C\u002Fp>\n\u003Ch3 id=\"komentar-banyak-baris-multi-line-comments\">Komentar Banyak Baris (\u003Cem>Multi Line Comments\u003C\u002Fem>)\u003C\u002Fh3>\n\u003Cp>Dengan \u003Cem>multi line comments\u003C\u002Fem> kita bisa menuliskan satu atau beberapa baris komentar dalam satu blok comment.\u003C\u002Fp>\n\u003Cp>Aturan penulisannya adalah dibuka dengan \u003Ccode>\u002F*\u003C\u002Fcode> dan ditutup dengan \u003Ccode>*\u002F\u003C\u002Fcode>. Contoh:\u003C\u002Fp>\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\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">JAVA\u003C\u002Fspan>\n    \u003C\u002Fdiv>\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\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\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>\u002F* Ini adalah komentar banyak baris\nKode ini di luar blok kelas *\u002F\n\npublic class HelloWorld {\n  \u002F*\n    Kode ini di dalam blok kelas HelloWorld\n    ini baris komentar baru\n    tetap dalam blok komentar yang sama\n  *\u002F\n  public static void main(String args[]) {\n    \u002F*\n      Fungsi utama ini akan dipanggil pertama kali\n      oleh komputer. Kode di bawah bertujuan untuk\n      mencetak \"Hello World\" di layar konsol\n    *\u002F\n    System.out.println(\"Hello World!\");\n    \u002F* multi line comment juga bisa digunakan untuk komentar satu baris *\u002F\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Ch3 id=\"komentar-dokumentasi-doc-comments\">Komentar Dokumentasi (\u003Cem>Doc Comments\u003C\u002Fem>)\u003C\u002Fh3>\n\u003Cp>Yang terakhir ada komentar dokumentasi.\u003C\u002Fp>\n\u003Cp>Komentar ini memiliki fungsi khusus untuk membuat dokumentasi kode yang kita buat. Java memiliki alat yang bernama \u003Cstrong>JavaDoc\u003C\u002Fstrong> untuk membuat dokumentasi dari komentar.\u003C\u002Fp>\n\u003Cp>\u003Cem>Doc comments\u003C\u002Fem> memiliki sintaks seperti \u003Cem>multi line comments\u003C\u002Fem>, hanya yang membedakan adalah pembukanya yaitu \u003Ccode>\u002F**\u003C\u002Fcode> dan setiap baris komentar harus diawali tanda \u003Ccode>*\u003C\u002Fcode>. Contohnya:\u003C\u002Fp>\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\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#ffbd2e] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"w-3 h-3 rounded-full bg-[#27c93f] border border-black\u002F40 inline-block\">\u003C\u002Fspan>\n      \u003Cspan class=\"ml-2 font-mono font-bold text-xs uppercase tracking-wider text-gray-300\">JAVA\u003C\u002Fspan>\n    \u003C\u002Fdiv>\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\u002Fpath>\n      \u003C\u002Fsvg>\n      \u003Cspan class=\"copy-text\">Copy\u003C\u002Fspan>\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\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>\u002F**\n* Kelas utama program \"Hello World\"\n* @author Inva\n*\u002F\npublic class HelloWorld {\n  \u002F**\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  *\u002F\n  public static void main(String args[]) {\n    System.out.println(\"Hello World!\");\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fdiv>\n\u003C\u002Fdiv>\u003Cp>Penulisan komentar jenis ini tidak boleh sembarangan, ada spesifikasi tersendiri dari JavaDoc. Untuk lebih lanjut bisa di lihat di laman \u003Ca href=\"https:\u002F\u002Fwww.oracle.com\u002Ftechnical-resources\u002Farticles\u002Fjava\u002Fjavadoc-tool.html\">panduan JavaDoc\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Karena fungsinya yang spesifik, kita tidak akan menggunakan komentar dokumentasi dalam Seri Belajar Java ini.\u003C\u002Fp>\n\u003Ch2 id=\"selanjutnya\">Selanjutnya\u003C\u002Fh2>\n\u003Cp>Komentar memang tidak berguna di mata komputer, tetapi sangat membantu programmer membaca programnya. Jadi jangan sungkan untuk menulis komentar.\u003C\u002Fp>\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\u002Fp>\n\u003Cp>Selanjutnya kita akan membahas tentang sistem output pada bahasa Java.\u003C\u002Fp>\n\u003Cp>Selamat berkoding ria 👋\u003C\u002Fp>\n","",[231,250,263,276,289,310],{"id":232,"title":233,"title_en":21,"slug":234,"excerpt":235,"excerpt_en":21,"has_translation":15,"published_at":236,"reading_time":237,"hidden_from_listing":15,"tags":238,"thumbnail_image":21,"og_image":241,"series":242,"authors":247},133,"Python Strings: the Badge That Only Worked for One Name","python-strings","The badge script printed the right name for the person who wrote it and the wrong name for everybody else. Slicing counts characters, and a name is words.","2026-10-28T13:00:00.000Z",6,[239,240],"python","string","\u002Fog\u002Fpython-strings.png",{"id":243,"title":244,"title_en":245,"slug":246},30,"Koleksi dan String","Collections and Strings","python-collections",[248],{"authors_id":249},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":251,"title":252,"title_en":21,"slug":253,"excerpt":254,"excerpt_en":21,"has_translation":15,"published_at":255,"reading_time":237,"hidden_from_listing":15,"tags":256,"thumbnail_image":21,"og_image":258,"series":259,"authors":260},132,"Python Tuples: Why All Three Points Are the Same Point","python-tuples","Three points walk into a loop and come out identical. The list was never copied three times; the name was. A tuple makes that bug impossible.","2026-10-28T12:00:00.000Z",[239,257],"tuple","\u002Fog\u002Fpython-tuples.png",{"id":243,"title":244,"title_en":245,"slug":246},[261],{"authors_id":262},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":264,"title":265,"title_en":21,"slug":266,"excerpt":267,"excerpt_en":21,"has_translation":15,"published_at":268,"reading_time":237,"hidden_from_listing":15,"tags":269,"thumbnail_image":21,"og_image":271,"series":272,"authors":273},131,"Python Sets: the Duplicate That Keeps Coming Back","python-sets","A de-duplication loop that works on clean data leaves four tags where there should be two. The bug is case, and the fix is a `set`.","2026-10-28T11:00:00.000Z",[239,270],"set","\u002Fog\u002Fpython-sets.png",{"id":243,"title":244,"title_en":245,"slug":246},[274],{"authors_id":275},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":277,"title":278,"title_en":21,"slug":279,"excerpt":280,"excerpt_en":21,"has_translation":15,"published_at":281,"reading_time":237,"hidden_from_listing":15,"tags":282,"thumbnail_image":21,"og_image":284,"series":285,"authors":286},130,"Python Dictionaries: the Key That Isn't There","python-dictionary","A word counter dies the first time it meets a word twice. The fix is one line; what takes longer is knowing which of a dict's three lookups to reach for.","2026-10-28T10:00:00.000Z",[239,283],"dictionary","\u002Fog\u002Fpython-dictionary.png",{"id":243,"title":244,"title_en":245,"slug":246},[287],{"authors_id":288},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":290,"title":291,"title_en":292,"slug":293,"excerpt":294,"excerpt_en":295,"has_translation":12,"published_at":296,"reading_time":14,"hidden_from_listing":15,"tags":297,"thumbnail_image":21,"og_image":304,"series":305,"authors":307},129,"Biar RAG nggak kena 504: pisahin jalur query dan ingestion","So Your RAG Stops Hitting 504: Split the Query Path From Ingestion","rag-pisah-jalur-query-dan-ingestion","Satu service RAG yang merangkap parsing dan menjawab kueri bakal tumbang pas ada yang upload PDF 200 halaman. Obatnya dua jalur dan satu queue.","One RAG service that both parses uploads and answers queries will fall over the moment someone uploads a 200-page PDF. The cure is two paths and one queue.","2026-10-22T01:30:00.000Z",[298,299,300,301,302,303],"rag","cloud-run","cloud-tasks","gcp","serverless","arsitektur","\u002Fog\u002Frag-pisah-jalur-query-dan-ingestion.png",{"id":306,"title":35,"title_en":36,"slug":37},8,[308],{"authors_id":309},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},{"id":311,"title":312,"title_en":313,"slug":314,"excerpt":315,"excerpt_en":316,"has_translation":12,"published_at":317,"reading_time":237,"hidden_from_listing":15,"tags":318,"thumbnail_image":21,"og_image":325,"series":326,"authors":327},128,"Linear atau graf: cara mengatur banyak agent tanpa loop abadi","Linear or Graph: How to Run Many Agents Without an Eternal Loop","multi-agen-linear-atau-grafik","Satu agent dengan dua puluh tool gampang kacau. Begitu beberapa agent saling revisi, kamu butuh graf yang mendukung cycle dan angka yang membuatnya berhenti.","One agent with twenty tools gets messy fast. Once several agents revise each other, you need a graph that allows cycles and a number that makes it stop.","2026-10-21T16:05:00.000Z",[319,320,321,322,323,324],"multi-agent","langgraph","autogen","orkestrasi","checkpoint","llm","\u002Fog\u002Fmulti-agen-linear-atau-grafik.png",{"id":306,"title":35,"title_en":36,"slug":37},[328],{"authors_id":329},{"id":127,"name":128,"slug":129,"role":130,"profile_picture":21},[331,335,336,339,342,345],{"text":332,"depth":333,"id":334},"Tentang Komentar pada Bahasa Java",2,"tentang-komentar-pada-bahasa-java",{"text":75,"depth":333,"id":77},{"text":337,"depth":81,"id":338},"Komentar Satu Baris (Single Line Comments)","komentar-satu-baris-single-line-comments",{"text":340,"depth":81,"id":341},"Komentar Banyak Baris (Multi Line Comments)","komentar-banyak-baris-multi-line-comments",{"text":343,"depth":81,"id":344},"Komentar Dokumentasi (Doc Comments)","komentar-dokumentasi-doc-comments",{"text":346,"depth":333,"id":347},"Selanjutnya","selanjutnya",1793295834930]