CINXE.COM

Kotlin (bahasa pemrograman) - Wikipedia bahasa Indonesia, ensiklopedia bebas

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available" lang="id" dir="ltr"> <head> <meta charset="UTF-8"> <title>Kotlin (bahasa pemrograman) - Wikipedia bahasa Indonesia, ensiklopedia bebas</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available";var cookie=document.cookie.match(/(?:^|; )idwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t.",".\t,"],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],"wgRequestId":"e54ec090-b6e7-4882-8a21-6c39f4a56b12","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Kotlin_(bahasa_pemrograman)","wgTitle":"Kotlin (bahasa pemrograman)","wgCurRevisionId":26917126,"wgRevisionId":26917126,"wgArticleId":2440670,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Halaman dengan argumen ganda di pemanggilan templat","Halaman dengan rujukan yang menggunakan parameter yang tidak didukung","CS1 sumber berbahasa Inggris (en)","Artikel dengan pranala luar nonaktif","Artikel dengan pranala luar nonaktif permanen","Artikel Wikipedia dengan penanda MA","Bahasa pemrograman Java","Bahasa pemrograman berorientasi objek"],"wgPageViewLanguage":"id","wgPageContentLanguage":"id","wgPageContentModel":"wikitext","wgRelevantPageName": "Kotlin_(bahasa_pemrograman)","wgRelevantArticleId":2440670,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"accuracy":{"levels":2}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"id","pageLanguageDir":"ltr","pageVariantFallbacks":"id"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":40000,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q3816639","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"], "GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.gadget.charinsert-styles":"ready","ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","ext.pygments.view","mediawiki.page.media","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.watchlist-notice", "ext.gadget.charinsert","ext.gadget.refToolbar","ext.gadget.AdvancedSiteNotices","ext.gadget.switcher","ext.gadget.Bagikan","ext.gadget.CurIDLink","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","oojs-ui.styles.icons-media","oojs-ui-core.icons"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=id&amp;modules=ext.cite.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/w/load.php?lang=id&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=id&amp;modules=ext.gadget.charinsert-styles&amp;only=styles&amp;skin=vector-2022"> <link rel="stylesheet" href="/w/load.php?lang=id&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.15"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Kotlin (bahasa pemrograman) - Wikipedia bahasa Indonesia, ensiklopedia bebas"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//id.m.wikipedia.org/wiki/Kotlin_(bahasa_pemrograman)"> <link rel="alternate" type="application/x-wiki" title="Sunting" href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (id)"> <link rel="EditURI" type="application/rsd+xml" href="//id.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://id.wikipedia.org/wiki/Kotlin_(bahasa_pemrograman)"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.id"> <link rel="alternate" type="application/atom+xml" title="Umpan Atom Wikipedia" href="/w/index.php?title=Istimewa:Perubahan_terbaru&amp;feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Kotlin_bahasa_pemrograman rootpage-Kotlin_bahasa_pemrograman skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Lompat ke isi</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Situs"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" title="Menu utama" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Menu utama" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Menu utama</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Menu utama</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">pindah ke bilah sisi</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">sembunyikan</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigasi </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage" class="mw-list-item"><a href="/wiki/Halaman_Utama" title="Kunjungi Halaman Utama [z]" accesskey="z"><span>Halaman Utama</span></a></li><li id="n-Daftar-isi" class="mw-list-item"><a href="/wiki/Wikipedia:Isi"><span>Daftar isi</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Istimewa:Perubahan_terbaru" title="Daftar perubahan terbaru dalam wiki. [r]" accesskey="r"><span>Perubahan terbaru</span></a></li><li id="n-Artikel-pilihan" class="mw-list-item"><a href="/wiki/Wikipedia:Artikel_pilihan/Topik"><span>Artikel pilihan</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Peristiwa_terkini" title="Temukan informasi tentang peristiwa terkini"><span>Peristiwa terkini</span></a></li><li id="n-newpage" class="mw-list-item"><a href="/wiki/Istimewa:Halaman_baru"><span>Halaman baru</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Istimewa:Halaman_sembarang" title="Tampilkan sembarang halaman [x]" accesskey="x"><span>Halaman sembarang</span></a></li> </ul> </div> </div> <div id="p-Komunitas" class="vector-menu mw-portlet mw-portlet-Komunitas" > <div class="vector-menu-heading"> Komunitas </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-Warung-Kopi" class="mw-list-item"><a href="/wiki/Wikipedia:Warung_Kopi"><span>Warung Kopi</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Portal:Komunitas" title="Tentang proyek, apa yang dapat Anda lakukan, di mana untuk mencari sesuatu"><span>Portal komunitas</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/Bantuan:Isi" title="Tempat mencari bantuan."><span>Bantuan</span></a></li> </ul> </div> </div> <div id="p-Wikipedia" class="vector-menu mw-portlet mw-portlet-Wikipedia" > <div class="vector-menu-heading"> Wikipedia </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:Perihal"><span>Tentang Wikipedia</span></a></li><li id="n-Pancapilar" class="mw-list-item"><a href="/wiki/Wikipedia:Pancapilar"><span>Pancapilar</span></a></li><li id="n-Kebijakan" class="mw-list-item"><a href="/wiki/Wikipedia:Kebijakan_dan_pedoman"><span>Kebijakan</span></a></li><li id="n-Hubungi-kami" class="mw-list-item"><a href="/wiki/Wikipedia:Hubungi_kami"><span>Hubungi kami</span></a></li><li id="n-Bak-pasir" class="mw-list-item"><a href="/wiki/Wikipedia:Bak_pasir"><span>Bak pasir</span></a></li> </ul> </div> </div> <div id="p-Bagikan" class="vector-menu mw-portlet mw-portlet-Bagikan emptyPortlet" > <div class="vector-menu-heading"> Bagikan </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Halaman_Utama" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="Ensiklopedia Bebas" src="/static/images/mobile/copyright/wikipedia-tagline-id.svg" width="120" height="14" style="width: 7.5em; height: 0.875em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Istimewa:Pencarian" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Cari di Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Pencarian</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Telusuri Wikipedia" aria-label="Telusuri Wikipedia" autocapitalize="sentences" title="Cari di Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Istimewa:Pencarian"> </div> <button class="cdx-button cdx-search-input__end-button">Cari</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Perkakas pribadi"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Tampilan"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page&#039;s font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Tampilan" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Tampilan</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/?wmf_source=donate&amp;wmf_medium=sidebar&amp;wmf_campaign=id.wikipedia.org&amp;uselang=id" class=""><span>Menyumbang</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Istimewa:Buat_akun&amp;returnto=Kotlin+%28bahasa+pemrograman%29" title="Anda dianjurkan untuk membuat akun dan masuk log; meskipun, hal itu tidak diwajibkan" class=""><span>Buat akun baru</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Istimewa:Masuk_log&amp;returnto=Kotlin+%28bahasa+pemrograman%29" title="Anda disarankan untuk masuk log, meskipun hal itu tidak diwajibkan. [o]" accesskey="o" class=""><span>Masuk log</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Opsi lainnya" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Perkakas pribadi" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Perkakas pribadi</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="Menu pengguna" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/?wmf_source=donate&amp;wmf_medium=sidebar&amp;wmf_campaign=id.wikipedia.org&amp;uselang=id"><span>Menyumbang</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Istimewa:Buat_akun&amp;returnto=Kotlin+%28bahasa+pemrograman%29" title="Anda dianjurkan untuk membuat akun dan masuk log; meskipun, hal itu tidak diwajibkan"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Buat akun baru</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Istimewa:Masuk_log&amp;returnto=Kotlin+%28bahasa+pemrograman%29" title="Anda disarankan untuk masuk log, meskipun hal itu tidak diwajibkan. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Masuk log</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Halaman penyunting yang telah keluar log <a href="/wiki/Bantuan:Pengantar" aria-label="Pelajari lebih lanjut tentang menyunting"><span>pelajari lebih lanjut</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Istimewa:Kontribusi_saya" title="Daftar suntingan yang dibuat dari alamat IP ini [y]" accesskey="y"><span>Kontribusi</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Istimewa:Pembicaraan_saya" title="Pembicaraan tentang suntingan dari alamat IP ini [n]" accesskey="n"><span>Pembicaraan</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Situs"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Daftar isi" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Daftar isi</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">pindah ke bilah sisi</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">sembunyikan</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Awal</div> </a> </li> <li id="toc-Riwayat" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Riwayat"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Riwayat</span> </div> </a> <ul id="toc-Riwayat-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Desain" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Desain"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Desain</span> </div> </a> <ul id="toc-Desain-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Sintaks" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Sintaks"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Sintaks</span> </div> </a> <button aria-controls="toc-Sintaks-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Gulingkan subbagian Sintaks</span> </button> <ul id="toc-Sintaks-sublist" class="vector-toc-list"> <li id="toc-Gaya_pemrograman_prosedural" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Gaya_pemrograman_prosedural"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.1</span> <span>Gaya pemrograman prosedural</span> </div> </a> <ul id="toc-Gaya_pemrograman_prosedural-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Titik_masuk_utama" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Titik_masuk_utama"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.2</span> <span>Titik masuk utama</span> </div> </a> <ul id="toc-Titik_masuk_utama-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Fungsi_ekstensi" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Fungsi_ekstensi"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.3</span> <span>Fungsi ekstensi</span> </div> </a> <ul id="toc-Fungsi_ekstensi-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Argumen_Unpack_dengan_operator_spread" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Argumen_Unpack_dengan_operator_spread"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.4</span> <span>Argumen <i>Unpack</i> dengan operator spread</span> </div> </a> <ul id="toc-Argumen_Unpack_dengan_operator_spread-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Deklarasi_destructuring" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Deklarasi_destructuring"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.5</span> <span>Deklarasi <i>destructuring</i></span> </div> </a> <ul id="toc-Deklarasi_destructuring-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Fungsi_bersarang_(Nested)" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Fungsi_bersarang_(Nested)"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.6</span> <span>Fungsi bersarang (<i>Nested</i>)</span> </div> </a> <ul id="toc-Fungsi_bersarang_(Nested)-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Kelas_bersifat_final_secara_bawaan" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Kelas_bersifat_final_secara_bawaan"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.7</span> <span>Kelas bersifat final secara bawaan</span> </div> </a> <ul id="toc-Kelas_bersifat_final_secara_bawaan-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Kelas_abstrak_terbuka_secara_bawaan" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Kelas_abstrak_terbuka_secara_bawaan"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.8</span> <span>Kelas abstrak terbuka secara bawaan</span> </div> </a> <ul id="toc-Kelas_abstrak_terbuka_secara_bawaan-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Kelas_bersifat_publik_secara_bawaan" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Kelas_bersifat_publik_secara_bawaan"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.9</span> <span>Kelas bersifat publik secara bawaan</span> </div> </a> <ul id="toc-Kelas_bersifat_publik_secara_bawaan-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Konstruktor_utama_vs._konstruktor_sekunder" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Konstruktor_utama_vs._konstruktor_sekunder"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.10</span> <span>Konstruktor utama vs. konstruktor sekunder</span> </div> </a> <ul id="toc-Konstruktor_utama_vs._konstruktor_sekunder-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Kelas_tertutup" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Kelas_tertutup"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.11</span> <span>Kelas tertutup</span> </div> </a> <ul id="toc-Kelas_tertutup-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Kelas_data" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Kelas_data"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.12</span> <span>Kelas data</span> </div> </a> <ul id="toc-Kelas_data-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Shell_interaktif_Kotlin" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Shell_interaktif_Kotlin"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.13</span> <span>Shell interaktif Kotlin</span> </div> </a> <ul id="toc-Shell_interaktif_Kotlin-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Kotlin_sebagai_bahasa_skrip" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Kotlin_sebagai_bahasa_skrip"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.14</span> <span>Kotlin sebagai bahasa skrip</span> </div> </a> <ul id="toc-Kotlin_sebagai_bahasa_skrip-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Keamanan_kosong" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Keamanan_kosong"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.15</span> <span>Keamanan kosong</span> </div> </a> <ul id="toc-Keamanan_kosong-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Lambda" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Lambda"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.16</span> <span>Lambda</span> </div> </a> <ul id="toc-Lambda-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Contoh_kompleks_&quot;hello_world&quot;" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Contoh_kompleks_&quot;hello_world&quot;"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.17</span> <span>Contoh kompleks "<i>hello world</i>"</span> </div> </a> <ul id="toc-Contoh_kompleks_&quot;hello_world&quot;-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Peralatan" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Peralatan"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Peralatan</span> </div> </a> <ul id="toc-Peralatan-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Aplikasi" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Aplikasi"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Aplikasi</span> </div> </a> <ul id="toc-Aplikasi-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Adopsi" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Adopsi"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Adopsi</span> </div> </a> <ul id="toc-Adopsi-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Pranala_luar" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Pranala_luar"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Pranala luar</span> </div> </a> <ul id="toc-Pranala_luar-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Rujukan" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Rujukan"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>Rujukan</span> </div> </a> <ul id="toc-Rujukan-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Bahan_bacaan" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Bahan_bacaan"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>Bahan bacaan</span> </div> </a> <ul id="toc-Bahan_bacaan-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Daftar isi" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" title="Daftar Isi" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Gulingkan daftar isi" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Gulingkan daftar isi</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Kotlin (bahasa pemrograman)</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Pergi ke artikel dalam bahasa lain. Terdapat 47 bahasa" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-47" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">47 bahasa</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-an mw-list-item"><a href="https://an.wikipedia.org/wiki/Kotlin" title="Kotlin – Aragon" lang="an" hreflang="an" data-title="Kotlin" data-language-autonym="Aragonés" data-language-local-name="Aragon" class="interlanguage-link-target"><span>Aragonés</span></a></li><li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%83%D9%88%D8%AA%D9%84%D9%86_(%D9%84%D8%BA%D8%A9_%D8%A8%D8%B1%D9%85%D8%AC%D8%A9)" title="كوتلن (لغة برمجة) – Arab" lang="ar" hreflang="ar" data-title="كوتلن (لغة برمجة)" data-language-autonym="العربية" data-language-local-name="Arab" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-az mw-list-item"><a href="https://az.wikipedia.org/wiki/Kotlin_(proqramla%C5%9Fd%C4%B1rma_dili)" title="Kotlin (proqramlaşdırma dili) – Azerbaijani" lang="az" hreflang="az" data-title="Kotlin (proqramlaşdırma dili)" data-language-autonym="Azərbaycanca" data-language-local-name="Azerbaijani" class="interlanguage-link-target"><span>Azərbaycanca</span></a></li><li class="interlanguage-link interwiki-be mw-list-item"><a href="https://be.wikipedia.org/wiki/Kotlin" title="Kotlin – Belarusia" lang="be" hreflang="be" data-title="Kotlin" data-language-autonym="Беларуская" data-language-local-name="Belarusia" class="interlanguage-link-target"><span>Беларуская</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/Kotlin" title="Kotlin – Bulgaria" lang="bg" hreflang="bg" data-title="Kotlin" data-language-autonym="Български" data-language-local-name="Bulgaria" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Kotlin" title="Kotlin – Katalan" lang="ca" hreflang="ca" data-title="Kotlin" data-language-autonym="Català" data-language-local-name="Katalan" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-ckb mw-list-item"><a href="https://ckb.wikipedia.org/wiki/%DA%A9%DB%86%D8%AA%D9%84%DB%8C%D9%86_(%D8%B2%D9%85%D8%A7%D9%86%DB%8C_%D8%A8%DB%95%D8%B1%D9%86%D8%A7%D9%85%DB%95%D8%AF%D8%A7%DA%95%DB%8E%DA%98%DB%8C)" title="کۆتلین (زمانی بەرنامەداڕێژی) – Kurdi Sorani" lang="ckb" hreflang="ckb" data-title="کۆتلین (زمانی بەرنامەداڕێژی)" data-language-autonym="کوردی" data-language-local-name="Kurdi Sorani" class="interlanguage-link-target"><span>کوردی</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/Kotlin_(programovac%C3%AD_jazyk)" title="Kotlin (programovací jazyk) – Ceko" lang="cs" hreflang="cs" data-title="Kotlin (programovací jazyk)" data-language-autonym="Čeština" data-language-local-name="Ceko" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-da mw-list-item"><a href="https://da.wikipedia.org/wiki/Kotlin" title="Kotlin – Dansk" lang="da" hreflang="da" data-title="Kotlin" data-language-autonym="Dansk" data-language-local-name="Dansk" class="interlanguage-link-target"><span>Dansk</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Kotlin_(Programmiersprache)" title="Kotlin (Programmiersprache) – Jerman" lang="de" hreflang="de" data-title="Kotlin (Programmiersprache)" data-language-autonym="Deutsch" data-language-local-name="Jerman" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-el mw-list-item"><a href="https://el.wikipedia.org/wiki/Kotlin_(%CE%B3%CE%BB%CF%8E%CF%83%CF%83%CE%B1_%CF%80%CF%81%CE%BF%CE%B3%CF%81%CE%B1%CE%BC%CE%BC%CE%B1%CF%84%CE%B9%CF%83%CE%BC%CE%BF%CF%8D)" title="Kotlin (γλώσσα προγραμματισμού) – Yunani" lang="el" hreflang="el" data-title="Kotlin (γλώσσα προγραμματισμού)" data-language-autonym="Ελληνικά" data-language-local-name="Yunani" class="interlanguage-link-target"><span>Ελληνικά</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/Kotlin_(programming_language)" title="Kotlin (programming language) – Inggris" lang="en" hreflang="en" data-title="Kotlin (programming language)" data-language-autonym="English" data-language-local-name="Inggris" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Kotlin_(lenguaje_de_programaci%C3%B3n)" title="Kotlin (lenguaje de programación) – Spanyol" lang="es" hreflang="es" data-title="Kotlin (lenguaje de programación)" data-language-autonym="Español" data-language-local-name="Spanyol" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-et mw-list-item"><a href="https://et.wikipedia.org/wiki/Kotlin_(programmeerimiskeel)" title="Kotlin (programmeerimiskeel) – Estonia" lang="et" hreflang="et" data-title="Kotlin (programmeerimiskeel)" data-language-autonym="Eesti" data-language-local-name="Estonia" class="interlanguage-link-target"><span>Eesti</span></a></li><li class="interlanguage-link interwiki-eu mw-list-item"><a href="https://eu.wikipedia.org/wiki/Kotlin_(programazio-lengoaia)" title="Kotlin (programazio-lengoaia) – Basque" lang="eu" hreflang="eu" data-title="Kotlin (programazio-lengoaia)" data-language-autonym="Euskara" data-language-local-name="Basque" class="interlanguage-link-target"><span>Euskara</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%DA%A9%D8%A7%D8%AA%D9%84%DB%8C%D9%86" title="کاتلین – Persia" lang="fa" hreflang="fa" data-title="کاتلین" data-language-autonym="فارسی" data-language-local-name="Persia" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/Kotlin_(ohjelmointikieli)" title="Kotlin (ohjelmointikieli) – Suomi" lang="fi" hreflang="fi" data-title="Kotlin (ohjelmointikieli)" data-language-autonym="Suomi" data-language-local-name="Suomi" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Kotlin_(langage)" title="Kotlin (langage) – Prancis" lang="fr" hreflang="fr" data-title="Kotlin (langage)" data-language-autonym="Français" data-language-local-name="Prancis" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/Kotlin" title="Kotlin – Ibrani" lang="he" hreflang="he" data-title="Kotlin" data-language-autonym="עברית" data-language-local-name="Ibrani" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/Kotlin_(programoz%C3%A1si_nyelv)" title="Kotlin (programozási nyelv) – Hungaria" lang="hu" hreflang="hu" data-title="Kotlin (programozási nyelv)" data-language-autonym="Magyar" data-language-local-name="Hungaria" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-hy mw-list-item"><a href="https://hy.wikipedia.org/wiki/Kotlin" title="Kotlin – Armenia" lang="hy" hreflang="hy" data-title="Kotlin" data-language-autonym="Հայերեն" data-language-local-name="Armenia" class="interlanguage-link-target"><span>Հայերեն</span></a></li><li class="interlanguage-link interwiki-io mw-list-item"><a href="https://io.wikipedia.org/wiki/Kotlin_(programifo-linguo)" title="Kotlin (programifo-linguo) – Ido" lang="io" hreflang="io" data-title="Kotlin (programifo-linguo)" data-language-autonym="Ido" data-language-local-name="Ido" class="interlanguage-link-target"><span>Ido</span></a></li><li class="interlanguage-link interwiki-is mw-list-item"><a href="https://is.wikipedia.org/wiki/Kotlin_(forritunarm%C3%A1l)" title="Kotlin (forritunarmál) – Islandia" lang="is" hreflang="is" data-title="Kotlin (forritunarmál)" data-language-autonym="Íslenska" data-language-local-name="Islandia" class="interlanguage-link-target"><span>Íslenska</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Kotlin_(linguaggio_di_programmazione)" title="Kotlin (linguaggio di programmazione) – Italia" lang="it" hreflang="it" data-title="Kotlin (linguaggio di programmazione)" data-language-autonym="Italiano" data-language-local-name="Italia" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/Kotlin" title="Kotlin – Jepang" lang="ja" hreflang="ja" data-title="Kotlin" data-language-autonym="日本語" data-language-local-name="Jepang" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-kaa mw-list-item"><a href="https://kaa.wikipedia.org/wiki/Kotlin_(programmalast%C4%B1r%C4%B1w_tili)" title="Kotlin (programmalastırıw tili) – Kara-Kalpak" lang="kaa" hreflang="kaa" data-title="Kotlin (programmalastırıw tili)" data-language-autonym="Qaraqalpaqsha" data-language-local-name="Kara-Kalpak" class="interlanguage-link-target"><span>Qaraqalpaqsha</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EC%BD%94%ED%8B%80%EB%A6%B0_(%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D_%EC%96%B8%EC%96%B4)" title="코틀린 (프로그래밍 언어) – Korea" lang="ko" hreflang="ko" data-title="코틀린 (프로그래밍 언어)" data-language-autonym="한국어" data-language-local-name="Korea" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-lv mw-list-item"><a href="https://lv.wikipedia.org/wiki/Kotlin_(programm%C4%93%C5%A1anas_valoda)" title="Kotlin (programmēšanas valoda) – Latvia" lang="lv" hreflang="lv" data-title="Kotlin (programmēšanas valoda)" data-language-autonym="Latviešu" data-language-local-name="Latvia" class="interlanguage-link-target"><span>Latviešu</span></a></li><li class="interlanguage-link interwiki-ml mw-list-item"><a href="https://ml.wikipedia.org/wiki/%E0%B4%95%E0%B5%8B%E0%B4%9F%E0%B5%8D%E2%80%8C%E0%B4%B2%E0%B4%BF%E0%B5%BB_(%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B5%8B%E0%B4%97%E0%B5%8D%E0%B4%B0%E0%B4%BE%E0%B4%AE%E0%B4%BF%E0%B4%99%E0%B5%8D_%E0%B4%AD%E0%B4%BE%E0%B4%B7)" title="കോട്‌ലിൻ (പ്രോഗ്രാമിങ് ഭാഷ) – Malayalam" lang="ml" hreflang="ml" data-title="കോട്‌ലിൻ (പ്രോഗ്രാമിങ് ഭാഷ)" data-language-autonym="മലയാളം" data-language-local-name="Malayalam" class="interlanguage-link-target"><span>മലയാളം</span></a></li><li class="interlanguage-link interwiki-ms mw-list-item"><a href="https://ms.wikipedia.org/wiki/Kotlin" title="Kotlin – Melayu" lang="ms" hreflang="ms" data-title="Kotlin" data-language-autonym="Bahasa Melayu" data-language-local-name="Melayu" class="interlanguage-link-target"><span>Bahasa Melayu</span></a></li><li class="interlanguage-link interwiki-my mw-list-item"><a href="https://my.wikipedia.org/wiki/%E1%80%80%E1%80%B1%E1%80%AC%E1%80%B7%E1%80%90%E1%80%BA%E1%80%9C%E1%80%84%E1%80%BA%E1%80%B8" title="ကော့တ်လင်း – Burma" lang="my" hreflang="my" data-title="ကော့တ်လင်း" data-language-autonym="မြန်မာဘာသာ" data-language-local-name="Burma" class="interlanguage-link-target"><span>မြန်မာဘာသာ</span></a></li><li class="interlanguage-link interwiki-nl mw-list-item"><a href="https://nl.wikipedia.org/wiki/Kotlin_(programmeertaal)" title="Kotlin (programmeertaal) – Belanda" lang="nl" hreflang="nl" data-title="Kotlin (programmeertaal)" data-language-autonym="Nederlands" data-language-local-name="Belanda" class="interlanguage-link-target"><span>Nederlands</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Kotlin_(j%C4%99zyk_programowania)" title="Kotlin (język programowania) – Polski" lang="pl" hreflang="pl" data-title="Kotlin (język programowania)" data-language-autonym="Polski" data-language-local-name="Polski" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Kotlin" title="Kotlin – Portugis" lang="pt" hreflang="pt" data-title="Kotlin" data-language-autonym="Português" data-language-local-name="Portugis" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/Kotlin" title="Kotlin – Rusia" lang="ru" hreflang="ru" data-title="Kotlin" data-language-autonym="Русский" data-language-local-name="Rusia" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-simple mw-list-item"><a href="https://simple.wikipedia.org/wiki/Kotlin_(programming_language)" title="Kotlin (programming language) – Simple English" lang="en-simple" hreflang="en-simple" data-title="Kotlin (programming language)" data-language-autonym="Simple English" data-language-local-name="Simple English" class="interlanguage-link-target"><span>Simple English</span></a></li><li class="interlanguage-link interwiki-sl mw-list-item"><a href="https://sl.wikipedia.org/wiki/Programski_jezik_Kotlin" title="Programski jezik Kotlin – Slovenia" lang="sl" hreflang="sl" data-title="Programski jezik Kotlin" data-language-autonym="Slovenščina" data-language-local-name="Slovenia" class="interlanguage-link-target"><span>Slovenščina</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/Kotlin_(programspr%C3%A5k)" title="Kotlin (programspråk) – Swedia" lang="sv" hreflang="sv" data-title="Kotlin (programspråk)" data-language-autonym="Svenska" data-language-local-name="Swedia" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-tg mw-list-item"><a href="https://tg.wikipedia.org/wiki/Kotlin" title="Kotlin – Tajik" lang="tg" hreflang="tg" data-title="Kotlin" data-language-autonym="Тоҷикӣ" data-language-local-name="Tajik" class="interlanguage-link-target"><span>Тоҷикӣ</span></a></li><li class="interlanguage-link interwiki-th mw-list-item"><a href="https://th.wikipedia.org/wiki/%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2%E0%B8%84%E0%B8%AD%E0%B8%95%E0%B8%A5%E0%B8%B4%E0%B8%99" title="ภาษาคอตลิน – Thai" lang="th" hreflang="th" data-title="ภาษาคอตลิน" data-language-autonym="ไทย" data-language-local-name="Thai" class="interlanguage-link-target"><span>ไทย</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/Kotlin" title="Kotlin – Turki" lang="tr" hreflang="tr" data-title="Kotlin" data-language-autonym="Türkçe" data-language-local-name="Turki" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/Kotlin" title="Kotlin – Ukraina" lang="uk" hreflang="uk" data-title="Kotlin" data-language-autonym="Українська" data-language-local-name="Ukraina" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-uz mw-list-item"><a href="https://uz.wikipedia.org/wiki/Kotlin" title="Kotlin – Uzbek" lang="uz" hreflang="uz" data-title="Kotlin" data-language-autonym="Oʻzbekcha / ўзбекча" data-language-local-name="Uzbek" class="interlanguage-link-target"><span>Oʻzbekcha / ўзбекча</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/Kotlin_(ng%C3%B4n_ng%E1%BB%AF_l%E1%BA%ADp_tr%C3%ACnh)" title="Kotlin (ngôn ngữ lập trình) – Vietnam" lang="vi" hreflang="vi" data-title="Kotlin (ngôn ngữ lập trình)" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnam" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-wuu mw-list-item"><a href="https://wuu.wikipedia.org/wiki/Kotlin" title="Kotlin – Wu Tionghoa" lang="wuu" hreflang="wuu" data-title="Kotlin" data-language-autonym="吴语" data-language-local-name="Wu Tionghoa" class="interlanguage-link-target"><span>吴语</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/Kotlin" title="Kotlin – Tionghoa" lang="zh" hreflang="zh" data-title="Kotlin" data-language-autonym="中文" data-language-local-name="Tionghoa" class="interlanguage-link-target"><span>中文</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/Kotlin" title="Kotlin – Kanton" lang="yue" hreflang="yue" data-title="Kotlin" data-language-autonym="粵語" data-language-local-name="Kanton" class="interlanguage-link-target"><span>粵語</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q3816639#sitelinks-wikipedia" title="Sunting pranala interwiki" class="wbc-editpage">Sunting pranala</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Ruang nama"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Kotlin_(bahasa_pemrograman)" title="Lihat halaman isi [c]" accesskey="c"><span>Halaman</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Pembicaraan:Kotlin_(bahasa_pemrograman)" rel="discussion" title="Pembicaraan halaman isi [t]" accesskey="t"><span>Pembicaraan</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Ubah varian bahasa" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Bahasa Indonesia</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Tampilan"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Kotlin_(bahasa_pemrograman)"><span>Baca</span></a></li><li id="ca-ve-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit" title="Sunting halaman ini [v]" accesskey="v"><span>Sunting</span></a></li><li id="ca-edit" class="collapsible vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit" title="Sunting kode sumber halaman ini [e]" accesskey="e"><span>Sunting sumber</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=history" title="Revisi sebelumnya dari halaman ini. [h]" accesskey="h"><span>Lihat riwayat</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Peralatan halaman"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Perkakas" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Perkakas</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Perkakas</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">pindah ke bilah sisi</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">sembunyikan</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="Opsi lainnya" > <div class="vector-menu-heading"> Tindakan </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Kotlin_(bahasa_pemrograman)"><span>Baca</span></a></li><li id="ca-more-ve-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit" title="Sunting halaman ini [v]" accesskey="v"><span>Sunting</span></a></li><li id="ca-more-edit" class="collapsible vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit" title="Sunting kode sumber halaman ini [e]" accesskey="e"><span>Sunting sumber</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=history"><span>Lihat riwayat</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> Umum </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Istimewa:Pranala_balik/Kotlin_(bahasa_pemrograman)" title="Daftar semua halaman wiki yang memiliki pranala ke halaman ini [j]" accesskey="j"><span>Pranala balik</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Istimewa:Perubahan_terkait/Kotlin_(bahasa_pemrograman)" rel="nofollow" title="Perubahan terbaru halaman-halaman yang memiliki pranala ke halaman ini [k]" accesskey="k"><span>Perubahan terkait</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Istimewa:Halaman_istimewa" title="Daftar semua halaman istimewa [q]" accesskey="q"><span>Halaman istimewa</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;oldid=26917126" title="Pranala permanen untuk revisi halaman ini"><span>Pranala permanen</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=info" title="Informasi lanjut tentang halaman ini"><span>Informasi halaman</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Istimewa:Kutip&amp;page=Kotlin_%28bahasa_pemrograman%29&amp;id=26917126&amp;wpFormIdentifier=titleform" title="Informasi tentang bagaimana mengutip halaman ini"><span>Kutip halaman ini</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Istimewa:UrlShortener&amp;url=https%3A%2F%2Fid.wikipedia.org%2Fwiki%2FKotlin_%28bahasa_pemrograman%29"><span>Lihat URL pendek</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Istimewa:QrCode&amp;url=https%3A%2F%2Fid.wikipedia.org%2Fwiki%2FKotlin_%28bahasa_pemrograman%29"><span>Unduh kode QR</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Cetak/ekspor </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=Istimewa:Buku&amp;bookcmd=book_creator&amp;referer=Kotlin+%28bahasa+pemrograman%29"><span>Buat buku</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Istimewa:DownloadAsPdf&amp;page=Kotlin_%28bahasa_pemrograman%29&amp;action=show-download-screen"><span>Unduh versi PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;printable=yes" title="Versi cetak halaman ini [p]" accesskey="p"><span>Versi cetak</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> Dalam proyek lain </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:Kotlin_(programming_language)" hreflang="en"><span>Wikimedia Commons</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q3816639" title="Pranala untuk menghubungkan butir pada ruang penyimpanan data [g]" accesskey="g"><span>Butir di Wikidata</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Peralatan halaman"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Tampilan"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Tampilan</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">pindah ke bilah sisi</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">sembunyikan</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">Dari Wikipedia bahasa Indonesia, ensiklopedia bebas</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="id" dir="ltr"><style data-mw-deduplicate="TemplateStyles:r22657712">.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}body.skin-minerva .mw-parser-output .infobox-header,body.skin-minerva .mw-parser-output .infobox-subheader,body.skin-minerva .mw-parser-output .infobox-above,body.skin-minerva .mw-parser-output .infobox-title,body.skin-minerva .mw-parser-output .infobox-image,body.skin-minerva .mw-parser-output .infobox-full-data,body.skin-minerva .mw-parser-output .infobox-below{text-align:center}</style><style data-mw-deduplicate="TemplateStyles:r25990039">.mw-parser-output .ib-video-game .infobox-label{white-space:nowrap;padding-right:0.65em}.mw-parser-output .ib-video-game .infobox-above{font-style:italic}.mw-parser-output .vg{background:url("//upload.wikimedia.org/wikipedia/commons/2/2d/Picto_infobox_gamepad.png")no-repeat top right}.mw-parser-output .ib-country{border-collapse:collapse;line-height:1.2em}.mw-parser-output .ib-country td,.mw-parser-output .ib-country th{border-top:1px solid transparent;padding:0.4em 0.6em 0.4em 0.6em}.mw-parser-output .ib-country .mergedtoprow .infobox-header,.mw-parser-output .ib-country .mergedtoprow .infobox-label,.mw-parser-output .ib-country .mergedtoprow .infobox-data,.mw-parser-output .ib-country .mergedtoprow .infobox-full-data,.mw-parser-output .ib-country .mergedtoprow .infobox-below{border-top:1px solid #a2a9b1;padding:0.4em 0.6em 0.2em 0.6em}.mw-parser-output .ib-country .mergedrow .infobox-label,.mw-parser-output .ib-country .mergedrow .infobox-data,.mw-parser-output .ib-country .mergedrow .infobox-full-data{border:0;padding:0 0.6em 0.2em 0.6em}.mw-parser-output .ib-country .mergedbottomrow .infobox-label,.mw-parser-output .ib-country .mergedbottomrow .infobox-data,.mw-parser-output .ib-country .mergedbottomrow .infobox-full-data{border-top:0;border-bottom:1px solid #a2a9b1;padding:0 0.6em 0.4em 0.6em}.mw-parser-output .ib-country-b{background:url("//upload.wikimedia.org/wikipedia/commons/7/7a/Picto_infobox_map.png")no-repeat top right}.mw-parser-output .ib-country .infobox-header{text-align:center}.mw-parser-output .ib-country .infobox-above{font-size:125%;line-height:1.2}.mw-parser-output .ib-country-names{padding-top:0.25em;font-weight:normal}.mw-parser-output .ib-country-name-style{display:inline}.mw-parser-output .ib-country .infobox-image{padding:0.5em 0}.mw-parser-output .ib-country-anthem{border-top:1px solid #a2a9b1;padding-top:0.5em;margin-top:0.5em}.mw-parser-output .ib-country-map-caption{position:relative;top:0.3em}.mw-parser-output .ib-country-largest,.mw-parser-output .ib-country-lang{font-weight:normal}.mw-parser-output .ib-country-ethnic,.mw-parser-output .ib-country-religion,.mw-parser-output .ib-country-sovereignty{font-weight:normal;display:inline}.mw-parser-output .ib-country-fake-li{text-indent:-0.9em;margin-left:1.2em;font-weight:normal}.mw-parser-output .ib-country-fake-li2{text-indent:0.5em;margin-left:1em;font-weight:normal}.mw-parser-output .ib-country-website{line-height:11pt}.mw-parser-output .ib-country-map-caption3{position:relative;top:0.3em}.mw-parser-output .ib-country-fn{text-align:left;margin:0 auto}.mw-parser-output .ib-country-fn-alpha{list-style-type:lower-alpha;margin-left:1em}.mw-parser-output .ib-country-fn-num{margin-left:1em}</style><table class="infobox vevent" style="box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.35);border-radius: 2px;; line-height:1.2"><tbody><tr><th colspan="2" class="infobox-above above" style="background-color:#def0ff;border-top:2px solid gray; border-bottom:2px solid gray;font-size:130%; line-height: normal">Kotlin</th></tr><tr><td colspan="2" class="infobox-image"><center><span typeof="mw:File"><a href="/wiki/Berkas:Kotlin_logo_2021.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/1/11/Kotlin_logo_2021.svg/70px-Kotlin_logo_2021.svg.png" decoding="async" width="70" height="15" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/11/Kotlin_logo_2021.svg/105px-Kotlin_logo_2021.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/11/Kotlin_logo_2021.svg/140px-Kotlin_logo_2021.svg.png 2x" data-file-width="512" data-file-height="111" /></a></span></center></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/wiki/Paradigma_pemrograman" title="Paradigma pemrograman">Paradigma</a></th><td class="infobox-data"><a href="/wiki/Paradigma_pemrograman" title="Paradigma pemrograman">Multi-paradigma</a>: <a href="/wiki/Pemrograman_berorientasi_objek" title="Pemrograman berorientasi objek">berorientasi objek</a>, <a href="/wiki/Pemrograman_fungsional" title="Pemrograman fungsional">fungsional</a>, <a href="/wiki/Pemrograman_imperatif" title="Pemrograman imperatif">imperatif</a>, <a href="/w/index.php?title=Block_(programming)&amp;action=edit&amp;redlink=1" class="new" title="Block (programming) (halaman belum tersedia)">terstruktur blok</a>, <a href="/wiki/Pemrograman_deklaratif" title="Pemrograman deklaratif">deklaratif</a>, <a href="/w/index.php?title=Pemrograman_umum&amp;action=edit&amp;redlink=1" class="new" title="Pemrograman umum (halaman belum tersedia)">generik</a>, <a href="/w/index.php?title=Refleksi_(pemrograman_komputer)&amp;action=edit&amp;redlink=1" class="new" title="Refleksi (pemrograman komputer) (halaman belum tersedia)">reflektif</a>, <a href="/w/index.php?title=Komputasi_bersamaan&amp;action=edit&amp;redlink=1" class="new" title="Komputasi bersamaan (halaman belum tersedia)">bersamaan</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/w/index.php?title=Desain_Perangkat_Lunak&amp;action=edit&amp;redlink=1" class="new" title="Desain Perangkat Lunak (halaman belum tersedia)">Dirancang&#160;oleh</a></th><td class="infobox-data"><a href="/w/index.php?title=JetBrains&amp;action=edit&amp;redlink=1" class="new" title="JetBrains (halaman belum tersedia)">JetBrains</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/wiki/Progammer" class="mw-redirect" title="Progammer">Pengembang</a></th><td class="infobox-data organiser">JetBrains dan kontributor sistem terbuka</td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%">Rilis&#160;perdana</th><td class="infobox-data">22 Juli 2011<span class="noprint">; 13 tahun lalu</span><span style="display:none">&#160;(<span class="bday dtstart published updated">2011-07-22</span>)</span></td></tr><tr><td colspan="2" class="infobox-full-data"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r22657712"></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="/wiki/Daur_hidup_rilis_perangkat_lunak" title="Daur hidup rilis perangkat lunak">Rilis stabil</a></th><td class="infobox-data"><div style="margin:0px;">2.1.10<sup id="cite_ref-wikidata-e52a9ccf21c347a91d72f37ae4605108aa7c870e-v3_1-0" class="reference"><a href="#cite_note-wikidata-e52a9ccf21c347a91d72f37ae4605108aa7c870e-v3-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup>&#160;<span class="mw-valign-text-top" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q3816639?uselang=id#P348" title="Sunting di Wikidata"><img alt="Sunting di Wikidata" src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span> / 2 Februari 2023<span class="noprint">; 2 tahun lalu</span><span style="display:none">&#160;(<span class="bday dtstart published updated">2023-02-02</span>)</span><sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup></div></td></tr><tr style="display:none"><td colspan="2"> </td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/w/index.php?title=Tipe_sistem&amp;action=edit&amp;redlink=1" class="new" title="Tipe sistem (halaman belum tersedia)">Tipe sistem</a></th><td class="infobox-data"><a href="/w/index.php?title=Pengetikan_inferensi&amp;action=edit&amp;redlink=1" class="new" title="Pengetikan inferensi (halaman belum tersedia)">Disimpulkan</a>, <a href="/w/index.php?title=Jenis_sistem&amp;action=edit&amp;redlink=1" class="new" title="Jenis sistem (halaman belum tersedia)">statis</a>, <a href="/w/index.php?title=Pengetikan_kuat_dan_lemah&amp;action=edit&amp;redlink=1" class="new" title="Pengetikan kuat dan lemah (halaman belum tersedia)">kuat</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/wiki/Serambi_(komputer)" class="mw-redirect" title="Serambi (komputer)">Platform</a></th><td class="infobox-data"> <ul><li><a href="/wiki/Android_(sistem_operasi)" title="Android (sistem operasi)">Android</a></li> <li><a href="/w/index.php?title=Java_virtual_machine&amp;action=edit&amp;redlink=1" class="new" title="Java virtual machine (halaman belum tersedia)">JVM</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> (<a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/js-overview.html">Kotlin/JS</a>)</li> <li><a href="/wiki/MacOS" title="MacOS">macOS</a> (termasuk. dukungan <a href="/w/index.php?title=Apple_silicon&amp;action=edit&amp;redlink=1" class="new" title="Apple silicon (halaman belum tersedia)">Apple silicon</a>)</li> <li><a href="/wiki/IOS" title="IOS">iOS</a>, <a href="/w/index.php?title=TvOS&amp;action=edit&amp;redlink=1" class="new" title="TvOS (halaman belum tersedia)">tvOS</a>, <a href="/wiki/WatchOS" title="WatchOS">watchOS</a></li> <li><a href="/wiki/Linux" title="Linux">Linux</a></li> <li><a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a></li> <li><a href="/w/index.php?title=WebAssembly&amp;action=edit&amp;redlink=1" class="new" title="WebAssembly (halaman belum tersedia)">WebAssembly</a></li> <li><a href="/w/index.php?title=LLVM&amp;action=edit&amp;redlink=1" class="new" title="LLVM (halaman belum tersedia)">LLVM</a> (<a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/native-overview.html">Kotlin/Native</a>)</li></ul> </td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/wiki/Sistem_operasi" title="Sistem operasi">Sistem operasi</a></th><td class="infobox-data">Yang mendukung JVM atau interpreter JavaScript, <a href="/wiki/Lintas_platform" class="mw-redirect" title="Lintas platform">Lintas platform</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/wiki/Lisensi_perangkat_lunak" title="Lisensi perangkat lunak">Lisensi</a></th><td class="infobox-data"><a href="/wiki/Lisensi_Apache#Lisensi_Apache_2.0" title="Lisensi Apache">Lisensi Apache 2.0</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%"><a href="/w/index.php?title=Ekstensi_nama_berkas&amp;action=edit&amp;redlink=1" class="new" title="Ekstensi nama berkas (halaman belum tersedia)">Ekstensi nama berkas</a></th><td class="infobox-data">.kt, .kts, .kexe, .klib</td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%">Situs web</th><td class="infobox-data"><span class="url"><a rel="nofollow" class="external text" href="https://kotlinlang.org">kotlinlang<wbr />.org</a></span></td></tr><tr><th scope="row" class="infobox-label" style="white-space: pre-line; width:33%">Repositori</th><td class="infobox-data"><span class="url"><a rel="nofollow" class="external text" href="https://kotlinlang.org/">kotlinlang<wbr />.org</a></span></td></tr><tr><th colspan="2" class="infobox-header" style="background-color:#def0ff;font-size:100%; line-height: normal">Terpengaruh oleh</th></tr><tr><td colspan="2" class="infobox-full-data"><style data-mw-deduplicate="TemplateStyles:r23782733">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><div class="hlist"><ul><li><a href="/wiki/C_Sharp_(bahasa_pemrograman)" title="C Sharp (bahasa pemrograman)">C#</a></li><li><a href="/w/index.php?title=Eiffel_(bahasa_pemrograman)&amp;action=edit&amp;redlink=1" class="new" title="Eiffel (bahasa pemrograman) (halaman belum tersedia)">Eiffel</a></li><li><a href="/w/index.php?title=Gosu_(bahasa_pemrograman)&amp;action=edit&amp;redlink=1" class="new" title="Gosu (bahasa pemrograman) (halaman belum tersedia)">Gosu</a></li><li><a href="/w/index.php?title=Groovy_(bahasa_pemrograman)&amp;action=edit&amp;redlink=1" class="new" title="Groovy (bahasa pemrograman) (halaman belum tersedia)">Groovy</a></li><li><a href="/wiki/Java_(bahasa_pemrograman)" class="mw-redirect" title="Java (bahasa pemrograman)">Java</a></li><li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li><li><a href="/w/index.php?title=ML_(bahasa_pemrograman)&amp;action=edit&amp;redlink=1" class="new" title="ML (bahasa pemrograman) (halaman belum tersedia)">ML</a></li><li><a href="/wiki/Python_(bahasa_pemrograman)" title="Python (bahasa pemrograman)">Python</a></li><li><a href="/wiki/Scala_(bahasa_pemrograman)" title="Scala (bahasa pemrograman)">Scala</a></li></ul></div></td></tr><tr><td colspan="2" class="infobox-below hlist" style="font-weight:normal;font-size:80%;text-align:left;height:20px;padding-top:0.2em;"><figure class="mw-halign-left" typeof="mw:File"><span><img alt="Sunting kotak info" src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></span><figcaption></figcaption></figure><span class="plainlinks"><a class="external text" href="https://id.wikipedia.org/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=top&amp;editintro="><b>Sunting kotak info</b></a></span>&#160;• <a href="/wiki/Templat:Infobox_programming_language" title="Templat:Infobox programming language">L</a>&#160;• <a href="/w/index.php?title=Pembicaraan_Templat:Infobox_programming_language&amp;action=edit&amp;redlink=1" class="new" title="Pembicaraan Templat:Infobox programming language (halaman belum tersedia)">B</a><figure class="mw-halign-right" typeof="mw:File"><a href="/wiki/Templat:Infobox_programming_language/doc" title="Bantuan penggunaan templat ini"><img alt="Info templat" src="//upload.wikimedia.org/wikipedia/commons/thumb/3/38/Info_Simple.svg/10px-Info_Simple.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/3/38/Info_Simple.svg/15px-Info_Simple.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/3/38/Info_Simple.svg/20px-Info_Simple.svg.png 2x" data-file-width="512" data-file-height="512" /></a><figcaption>Bantuan penggunaan templat ini</figcaption></figure></td></tr></tbody></table> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r22657712"> <p><br /> <b>Kotlin</b> adalah sebuah bahasa pemrograman dengan <a href="/w/index.php?title=Pengetikan_statis&amp;action=edit&amp;redlink=1" class="new" title="Pengetikan statis (halaman belum tersedia)">pengetikan statis</a> yang berjalan pada <a href="/wiki/Java_Virtual_Machine" class="mw-redirect" title="Java Virtual Machine">Mesin Virtual Java</a> ataupun menggunakan kompiler <a href="/w/index.php?title=LLVM&amp;action=edit&amp;redlink=1" class="new" title="LLVM (halaman belum tersedia)">LLVM</a> yang dapat pula dikompilasikan kedalam bentuk <a href="/wiki/Kode_sumber" title="Kode sumber">kode sumber</a> JavaScript. Pengembang utamanya berasal dari tim programer dari JetBrains yang bermarkas di Rusia.<sup id="cite_ref-oracle_interview_3-0" class="reference"><a href="#cite_note-oracle_interview-3"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup> Meskipun sintaksisnya tidak kompatibel dengan bahasa <a href="/wiki/Java" title="Java">Java</a>, Kotlin didesain untuk dapat bekerja sama dengan kode bahasa Java dan bergantung kepada kode bahasa Java dari <a href="/w/index.php?title=Java_Class_Library&amp;action=edit&amp;redlink=1" class="new" title="Java Class Library (halaman belum tersedia)">Kelas Pustaka Java</a> yang ada, seperti berbagai framework Java yang ada. Tim Pengembang memutuskan menamakannya Kotlin dengan mengambil nama dari <a href="/wiki/Pulau_Kotlin" title="Pulau Kotlin">sebuah pulau di Rusia</a>, sebagaimana Java yang mengambil nama dari pulau Jawa di Indonesia.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup> Setelah Google mengumumkan bahwa Kotlin menjadi bahasa kelas satu bagi Android, maka bersama Java dan C++, Kotlin menjadi bahasa resmi untuk pengembangan aplikasi-aplikasi Android.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">&#91;</span>5<span class="cite-bracket">&#93;</span></a></sup> </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Riwayat">Riwayat</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=1" title="Sunting bagian: Riwayat" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=1" title="Sunting kode sumber bagian: Riwayat"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/Berkas:Kotlin_Mascot_2D_no._1.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Kotlin_Mascot_2D_no._1.svg/220px-Kotlin_Mascot_2D_no._1.svg.png" decoding="async" width="220" height="220" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Kotlin_Mascot_2D_no._1.svg/330px-Kotlin_Mascot_2D_no._1.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Kotlin_Mascot_2D_no._1.svg/440px-Kotlin_Mascot_2D_no._1.svg.png 2x" data-file-width="512" data-file-height="512" /></a><figcaption>Gambar 2D maskot Kotlin</figcaption></figure> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/Berkas:Kotlin_Mascot_3D_no._5.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/0/09/Kotlin_Mascot_3D_no._5.png/220px-Kotlin_Mascot_3D_no._5.png" decoding="async" width="220" height="202" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/0/09/Kotlin_Mascot_3D_no._5.png/330px-Kotlin_Mascot_3D_no._5.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/0/09/Kotlin_Mascot_3D_no._5.png/440px-Kotlin_Mascot_3D_no._5.png 2x" data-file-width="1200" data-file-height="1100" /></a><figcaption>Gambar 3D maskot Kotlin</figcaption></figure> <p>Pada Juli 2011, <a href="/w/index.php?title=JetBrains&amp;action=edit&amp;redlink=1" class="new" title="JetBrains (halaman belum tersedia)">JetBrains</a> meluncurkan Project Kotlin, bahasa baru untuk JVM, yang telah dikembangkan selama satu tahun.<sup id="cite_ref-announce3_6-0" class="reference"><a href="#cite_note-announce3-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> Pimpinan JetBrains Dmitry Jemerov mengatakan bahwa sebagian besar bahasa tidak memiliki fitur yang mereka cari, kecuali <a href="/wiki/Scala_(bahasa_pemrograman)" title="Scala (bahasa pemrograman)">Scala</a>. Namun, ia menyebut waktu <a href="/wiki/Kompilator" title="Kompilator">kompilasi</a> Scala yang lambat sebagai kekurangan.<sup id="cite_ref-announce3_6-1" class="reference"><a href="#cite_note-announce3-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> Salah satu tujuan yang dinyatakan dari Kotlin adalah untuk mengkompilasi secepat Java. Pada bulan Februari 2012, JetBrains membuat proyek open source di bawah <a href="/wiki/Lisensi_Apache" title="Lisensi Apache">lisensi Apache 2</a>.<sup id="cite_ref-open_source3_7-0" class="reference"><a href="#cite_note-open_source3-7"><span class="cite-bracket">&#91;</span>7<span class="cite-bracket">&#93;</span></a></sup> </p><p>Nama itu berasal dari <a href="/wiki/Pulau_Kotlin" title="Pulau Kotlin">Pulau Kotlin</a>, dekat <a href="/wiki/Sankt-Peterburg" title="Sankt-Peterburg">St. Petersburg</a>. <a href="/w/index.php?title=Andrey_Breslav&amp;action=edit&amp;redlink=1" class="new" title="Andrey Breslav (halaman belum tersedia)">Andrey Breslav</a> menyebutkan bahwa tim memutuskan untuk menamainya setelah sebuah pulau, seperti halnya Java dinamai menurut pulau <a href="/wiki/Jawa" title="Jawa">Jawa</a> di Indonesia<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">&#91;</span>8<span class="cite-bracket">&#93;</span></a></sup> (meskipun bahasa pemrograman Java diartikan dengan nama kopi daripada pulau).<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">&#91;</span>9<span class="cite-bracket">&#93;</span></a></sup> JetBrains berharap bahasa baru ini akan mendorong penjualan <a href="/w/index.php?title=IntelliJ_IDEA&amp;action=edit&amp;redlink=1" class="new" title="IntelliJ IDEA (halaman belum tersedia)">IntelliJ IDEA</a>.<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin versi 1.0 dirilis pada 15 Februari 2016<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup> Versi ini secara resmi ditetapkan sebagai versi rilis stabil pertama dan JetBrains telah menetapkan dukungan versi sebelumnya untuk jangka panjangan dengan versi ini. </p><p>Pada <a href="/wiki/Google_I/O" title="Google I/O">Google I/O</a> 2017, <a href="/wiki/Google" title="Google">Google</a> mengumumkan dukungan kelas pertama untuk Kotlin pada <a href="/wiki/Android_(sistem_operasi)" title="Android (sistem operasi)">Android</a>. </p><p>Kotlin versi 1.2 dirilis pada 28 November 2017.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup> Fitur berbagi kode antara JVM dan platform Javascript baru ditambahkan pada versi rilis ini. </p><p>Kotlin versi 1.3 dirilis pada 29 Oktober 2018, membawa coroutines pada pemrograman asynchronous. </p><p>Pada 7 Mei 2019, Google mengumumkan bahwa bahasa pemrograman Kotlin sekarang menjadi bahasa pilihan untuk pengembang aplikasi Android.<sup id="cite_ref-auto3_13-0" class="reference"><a href="#cite_note-auto3-13"><span class="cite-bracket">&#91;</span>13<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin 1.4 dirilis pada Agustus 2020, misalnya dengan beberapa perubahan kecil pada dukungan untuk platform Apple, yaitu pada <a href="/w/index.php?title=Interoperabilitas&amp;action=edit&amp;redlink=1" class="new" title="Interoperabilitas (halaman belum tersedia)">interop</a> <a href="/w/index.php?title=Objective-C&amp;action=edit&amp;redlink=1" class="new" title="Objective-C (halaman belum tersedia)">Objective-C</a>/<a href="/wiki/Swift_(bahasa_pemrograman)" title="Swift (bahasa pemrograman)">Swift</a>.<sup id="cite_ref-:03_14-0" class="reference"><a href="#cite_note-:03-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">&#91;</span>15<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin 1.5 dirilis pada Mei 2021.<sup id="cite_ref-:03_14-1" class="reference"><a href="#cite_note-:03-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin 1.6 dirilis pada November 2021.<sup id="cite_ref-:03_14-2" class="reference"><a href="#cite_note-:03-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin 1.7 dirilis pada Juni 2022.<sup id="cite_ref-:03_14-3" class="reference"><a href="#cite_note-:03-14"><span class="cite-bracket">&#91;</span>14<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin 1.8 dirilis pada Desember 2022, 1.8.0 dirilis pada 11 Januari 2023.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">&#91;</span>16<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Desain">Desain</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=2" title="Sunting bagian: Desain" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=2" title="Sunting kode sumber bagian: Desain"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Pemimpin pengembangan Andrey Breslav mengatakan bahwa Kotlin dirancang untuk menjadi bahasa <a href="/wiki/Pemrograman_berorientasi_objek" title="Pemrograman berorientasi objek">berorientasi objek</a> berkekuatan industri, dan "bahasa yang lebih baik" daripada <a href="/wiki/Java" title="Java">Java</a>, tetapi masih sepenuhnya dapat dioperasikan dengan kode Java, memungkinkan perusahaan untuk melakukan migrasi bertahap dari Java ke Kotlin.<sup id="cite_ref-interview3_17-0" class="reference"><a href="#cite_note-interview3-17"><span class="cite-bracket">&#91;</span>17<span class="cite-bracket">&#93;</span></a></sup> </p><p><a href="/wiki/Tanda_titik_koma" title="Tanda titik koma">Titik koma</a> adalah opsional sebagai <a href="/w/index.php?title=Terminator_pernyataan&amp;action=edit&amp;redlink=1" class="new" title="Terminator pernyataan (halaman belum tersedia)">terminator</a> <a href="/w/index.php?title=Pernyataan_(ilmu_komputer)&amp;action=edit&amp;redlink=1" class="new" title="Pernyataan (ilmu komputer) (halaman belum tersedia)">pernyataan</a>; dalam kebanyakan kasus, <a href="/w/index.php?title=Garis_baru&amp;action=edit&amp;redlink=1" class="new" title="Garis baru (halaman belum tersedia)">baris baru</a> sudah cukup bagi <a href="/wiki/Kompilator" title="Kompilator">kompiler</a> untuk menyimpulkan bahwa pernyataan telah berakhir.<sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">&#91;</span>18<span class="cite-bracket">&#93;</span></a></sup> </p><p>Deklarasi <a href="/wiki/Variabel_(ilmu_komputer)" title="Variabel (ilmu komputer)">variabel</a> dan <a href="/w/index.php?title=Parameter_(pemrograman_komputer)&amp;action=edit&amp;redlink=1" class="new" title="Parameter (pemrograman komputer) (halaman belum tersedia)">daftar parameter</a> Kotlin memiliki <a href="/wiki/Tipe_data" class="mw-redirect" title="Tipe data">tipe data</a> yang muncul setelah nama variabel (dan dengan pemisah <a href="/wiki/Tanda_titik_dua" title="Tanda titik dua">titik dua</a>), mirip dengan <a href="/wiki/Ada_(bahasa_pemrograman)" title="Ada (bahasa pemrograman)">Ada</a>, <a href="/wiki/BASIC" title="BASIC">BASIC</a>, <a href="/wiki/Pascal_(bahasa_pemrograman)" title="Pascal (bahasa pemrograman)">Pascal</a>, <a href="/w/index.php?title=TypeScript&amp;action=edit&amp;redlink=1" class="new" title="TypeScript (halaman belum tersedia)">TypeScript</a> dan <a href="/wiki/Rust_(bahasa_pemrograman)" title="Rust (bahasa pemrograman)">Rust</a>. Ini, menurut sebuah artikel dari Roman Elizarov, pemimpin proyek saat ini, menghasilkan penyelarasan nama variabel dan lebih menyenangkan untuk dilihat terutama ketika ada beberapa deklarasi variabel berturut-turut dan satu atau lebih tipe terlalu rumit untuk inferensi tipe atau perlu dideklarasikan secara eksplisit agar dapat dipahami oleh pembaca manusia.<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">&#91;</span>19<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">&#91;</span>20<span class="cite-bracket">&#93;</span></a></sup> </p><p>Variabel di Kotlin dapat dibaca-saja, dideklarasikan dengan <span style="font-family: monospace, monospace;">val</span> <a href="/wiki/Kata_kunci" title="Kata kunci">kata kunci</a>, atau bisa berubah, dideklarasikan dengan<span style="font-family: monospace, monospace;">var</span>kata kunci.<sup id="cite_ref-Basic_Syntax3_21-0" class="reference"><a href="#cite_note-Basic_Syntax3-21"><span class="cite-bracket">&#91;</span>21<span class="cite-bracket">&#93;</span></a></sup> </p><p>Anggota kelas bersifat publik secara default, dan kelas itu sendiri adalah <a href="/w/index.php?title=Kelas_akhir&amp;action=edit&amp;redlink=1" class="new" title="Kelas akhir (halaman belum tersedia)">final</a> secara default, artinya membuat kelas turunan dinonaktifkan kecuali kelas dasar dideklarasikan dengan <span style="font-family: monospace, monospace;">open</span> kata kunci. </p><p>Selain <a href="/wiki/Kelas_(ilmu_komputer)" title="Kelas (ilmu komputer)">kelas</a> dan <a href="/w/index.php?title=Metode_(pemrograman_komputer)&amp;action=edit&amp;redlink=1" class="new" title="Metode (pemrograman komputer) (halaman belum tersedia)">fungsi anggota</a> (yang setara dengan metode) pemrograman berorientasi objek, Kotlin juga mendukung <a href="/wiki/Pemrograman_prosedural" title="Pemrograman prosedural">pemrograman prosedural</a> dengan penggunaan <a href="/wiki/Subrutin" title="Subrutin">fungsi</a>.<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">&#91;</span>22<span class="cite-bracket">&#93;</span></a></sup> Fungsi dan konstruktor Kotlin mendukung <a href="/w/index.php?title=Argumen_default&amp;action=edit&amp;redlink=1" class="new" title="Argumen default (halaman belum tersedia)">argumen default</a>, daftar <a href="/w/index.php?title=Fungsi_variadik&amp;action=edit&amp;redlink=1" class="new" title="Fungsi variadik (halaman belum tersedia)">argumen panjang variabel</a>, argumen <a href="/w/index.php?title=Parameter_bernama&amp;action=edit&amp;redlink=1" class="new" title="Parameter bernama (halaman belum tersedia)">bernama</a>, dan kelebihan beban dengan tanda tangan unik. Fungsi anggota kelas adalah virtual, yaitu dikirim berdasarkan jenis runtime dari objek yang dipanggil. </p><p>Kotlin 1.3 menambahkan dukungan untuk kontrak,<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">&#91;</span>23<span class="cite-bracket">&#93;</span></a></sup> yang stabil untuk deklarasi pustaka standar, tetapi masih eksperimental untuk deklarasi yang ditentukan pengguna. Kontrak terinspirasi oleh desain <a href="/w/index.php?title=Eiffel_(bahasa_pemrograman)&amp;action=edit&amp;redlink=1" class="new" title="Eiffel (bahasa pemrograman) (halaman belum tersedia)">Eiffel</a> <a href="/w/index.php?title=Desain_berdasarkan_kontrak&amp;action=edit&amp;redlink=1" class="new" title="Desain berdasarkan kontrak (halaman belum tersedia)">dengan paradigma pemrograman kontrak</a>.<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">&#91;</span>24<span class="cite-bracket">&#93;</span></a></sup> </p><p>Menurut pengembang Kotlin, Anda dapat memanggil kode <a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> dari Kotlin, misalnya menulis aplikasi <a href="/w/index.php?title=React&amp;action=edit&amp;redlink=1" class="new" title="React (halaman belum tersedia)">React</a> yang aman untuk jenis tertentu, atau menulis dan memelihara <a href="/wiki/Aplikasi_web" title="Aplikasi web">aplikasi web</a> tumpukan penuh yang berbagi logika validasi dengan frontend, atau Anda dapat "menghasilkan pustaka dari kode Kotlin Anda yang dapat dikonsumsi sebagai modul dari basis kode apa pun yang ditulis dalam JavaScript atau <a href="/w/index.php?title=TypeScript&amp;action=edit&amp;redlink=1" class="new" title="TypeScript (halaman belum tersedia)">TypeScript</a>".<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">&#91;</span>25<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Sintaks">Sintaks</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=3" title="Sunting bagian: Sintaks" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=3" title="Sunting kode sumber bagian: Sintaks"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Gaya_pemrograman_prosedural">Gaya pemrograman prosedural</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=4" title="Sunting bagian: Gaya pemrograman prosedural" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=4" title="Sunting kode sumber bagian: Gaya pemrograman prosedural"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Kotlin melonggarkan batasan Java yang mengizinkan metode dan variabel <a href="/w/index.php?title=Statis_(kata_kunci)&amp;action=edit&amp;redlink=1" class="new" title="Statis (kata kunci) (halaman belum tersedia)">statis</a> hanya ada di dalam badan kelas. Objek dan fungsi statis dapat didefinisikan di tingkat atas paket tanpa memerlukan tingkat kelas yang berlebihan. Untuk kompatibilitas dengan Java, Kotlin menyediakan anotasi <code>JvmName</code> yang menentukan nama kelas yang digunakan saat paket dilihat dari proyek Java. Misalnya, <code>@file:JvmName("JavaClassName")</code>. </p> <div class="mw-heading mw-heading3"><h3 id="Titik_masuk_utama">Titik masuk utama</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=5" title="Sunting bagian: Titik masuk utama" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=5" title="Sunting kode sumber bagian: Titik masuk utama"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Seperti pada <a href="/wiki/C_(bahasa_pemrograman)" title="C (bahasa pemrograman)">C</a>, <a href="/wiki/C%2B%2B" title="C++">C++</a>, <a href="/wiki/C_Sharp_(bahasa_pemrograman)" title="C Sharp (bahasa pemrograman)">C#</a>, Java, dan <a href="/wiki/Go_(bahasa_pemrograman)" title="Go (bahasa pemrograman)">Go</a>, <a href="/w/index.php?title=Titik_masuk&amp;action=edit&amp;redlink=1" class="new" title="Titik masuk (halaman belum tersedia)">titik masuk</a> ke <a href="/wiki/Program_komputer" title="Program komputer">program</a> Kotlin adalah fungsi bernama "main", yang dapat dilewatkan array yang berisi argumen <a href="/wiki/Antarmuka_baris_perintah" title="Antarmuka baris perintah">baris perintah</a> apa pun. Ini opsional karena Kotlin 1.3.<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">&#91;</span>26<span class="cite-bracket">&#93;</span></a></sup> <a href="/wiki/Perl" title="Perl">Perl</a>, <a href="/wiki/PHP" title="PHP">PHP</a> dan <a href="/w/index.php?title=Interpolasi_string&amp;action=edit&amp;redlink=1" class="new" title="Interpolasi string (halaman belum tersedia)">interpolasi string</a> gaya <a href="/w/index.php?title=Shell_Unix&amp;action=edit&amp;redlink=1" class="new" title="Shell Unix (halaman belum tersedia)">shell Unix</a> didukung. <a href="/w/index.php?title=Ketik_inferensi&amp;action=edit&amp;redlink=1" class="new" title="Ketik inferensi (halaman belum tersedia)">Jenis inferensi</a> juga didukung.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// Hello, World! example</span> <span class="linenos" data-line="2"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">main</span><span class="p">()</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">scope</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&quot;World&quot;</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;Hello, </span><span class="si">$</span><span class="n">scope</span><span class="s">!&quot;</span><span class="p">)</span> <span class="linenos" data-line="5"></span><span class="p">}</span> <span class="linenos" data-line="6"></span> <span class="linenos" data-line="7"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">args</span><span class="p">:</span><span class="w"> </span><span class="n">Array</span><span class="o">&lt;</span><span class="kt">String</span><span class="o">&gt;</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="8"></span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="n">arg</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">args</span><span class="p">)</span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="n">arg</span><span class="p">)</span> <span class="linenos" data-line="10"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Fungsi_ekstensi">Fungsi ekstensi</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=6" title="Sunting bagian: Fungsi ekstensi" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=6" title="Sunting kode sumber bagian: Fungsi ekstensi"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Mirip dengan C#, Kotlin memungkinkan penambahan fungsi ekstensi ke kelas mana pun tanpa formalitas membuat kelas turunan dengan fungsi baru. Fungsi ekstensi memiliki akses ke semua antarmuka publik kelas, yang dapat digunakan untuk membuat antarmuka fungsi baru ke kelas target. Fungsi ekstensi akan muncul persis seperti fungsi kelas dan akan ditampilkan dalam pemeriksaan penyelesaian kode fungsi kelas. Sebagai contoh:</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="k">package</span><span class="w"> </span><span class="nn">MyStringExtensions</span> <span class="linenos" data-line="2"></span> <span class="linenos" data-line="3"></span><span class="kd">fun</span><span class="w"> </span><span class="n">String</span><span class="p">.</span><span class="nf">lastChar</span><span class="p">():</span><span class="w"> </span><span class="kt">Char</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">get</span><span class="p">(</span><span class="n">length</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="m">1</span><span class="p">)</span> <span class="linenos" data-line="4"></span> <span class="linenos" data-line="5"></span><span class="o">&gt;&gt;&gt;</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;Kotlin&quot;</span><span class="p">.</span><span class="na">lastChar</span><span class="p">())</span> </pre></div><p>Dengan menempatkan kode sebelumnya di tingkat atas sebuah paket, kelas String diperluas untuk menyertakan fungsi <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">lastChar</code> yang tidak termasuk dalam definisi asli kelas String.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// Overloading &#39;+&#39; operator using an extension function</span> <span class="linenos" data-line="2"></span><span class="kd">operator</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="n">Point</span><span class="p">.</span><span class="nf">plus</span><span class="p">(</span><span class="n">other</span><span class="p">:</span><span class="w"> </span><span class="n">Point</span><span class="p">):</span><span class="w"> </span><span class="n">Point</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">Point</span><span class="p">(</span><span class="n">x</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">other</span><span class="p">.</span><span class="na">x</span><span class="p">,</span><span class="w"> </span><span class="n">y</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">other</span><span class="p">.</span><span class="na">y</span><span class="p">)</span> <span class="linenos" data-line="4"></span><span class="p">}</span> <span class="linenos" data-line="5"></span> <span class="linenos" data-line="6"></span><span class="o">&gt;&gt;&gt;</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">p1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Point</span><span class="p">(</span><span class="m">10</span><span class="p">,</span><span class="w"> </span><span class="m">20</span><span class="p">)</span> <span class="linenos" data-line="7"></span><span class="o">&gt;&gt;&gt;</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">p2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Point</span><span class="p">(</span><span class="m">30</span><span class="p">,</span><span class="w"> </span><span class="m">40</span><span class="p">)</span> <span class="linenos" data-line="8"></span><span class="o">&gt;&gt;&gt;</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="n">p1</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">p2</span><span class="p">)</span> <span class="linenos" data-line="9"></span><span class="n">Point</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="m">40</span><span class="p">,</span><span class="w"> </span><span class="n">y</span><span class="o">=</span><span class="m">60</span><span class="p">)</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Argumen_Unpack_dengan_operator_spread">Argumen <i>Unpack</i> dengan operator spread</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=7" title="Sunting bagian: Argumen Unpack dengan operator spread" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=7" title="Sunting kode sumber bagian: Argumen Unpack dengan operator spread"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Sama halnya dengan sintaks program Python, operator spread asterisk (*) membongkar (<i>unpack</i>) konten array sebagai argumen yang dipisahkan koma ke suatu fungsi:</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">args</span><span class="p">:</span><span class="w"> </span><span class="n">Array</span><span class="o">&lt;</span><span class="kt">String</span><span class="o">&gt;</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"> </span> <span class="linenos" data-line="2"></span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">list</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">listOf</span><span class="p">(</span><span class="s">&quot;args: &quot;</span><span class="p">,</span><span class="w"> </span><span class="o">*</span><span class="n">args</span><span class="p">)</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="n">list</span><span class="p">)</span> <span class="linenos" data-line="4"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Deklarasi_destructuring">Deklarasi <i>destructuring</i></h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=8" title="Sunting bagian: Deklarasi destructuring" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=8" title="Sunting kode sumber bagian: Deklarasi destructuring"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Deklarasi <i>destructuring</i> menguraikan objek menjadi beberapa variabel sekaligus, misalnya objek koordinat 2D mungkin <i>didestruktur</i> menjadi dua <a href="/wiki/Bilangan_bulat" title="Bilangan bulat">bilangan bulat</a>, x dan y. </p><p> Misalnya, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">Map.Entry</code>. Objek Entry mendukung destrukturisasi untuk menyederhanakan akses ke bidang kunci dan nilainya:</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="k">for</span><span class="w"> </span><span class="p">((</span><span class="n">key</span><span class="p">,</span><span class="w"> </span><span class="n">value</span><span class="p">)</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">map</span><span class="p">)</span> <span class="linenos" data-line="2"></span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;</span><span class="si">$</span><span class="n">key</span><span class="s">: </span><span class="si">$</span><span class="n">value</span><span class="s">&quot;</span><span class="p">)</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Fungsi_bersarang_(Nested)"><span id="Fungsi_bersarang_.28Nested.29"></span>Fungsi bersarang (<i>Nested</i>)</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=9" title="Sunting bagian: Fungsi bersarang (Nested)" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=9" title="Sunting kode sumber bagian: Fungsi bersarang (Nested)"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Kotlin memungkinkan fungsi lokal dideklarasikan di dalam fungsi atau metode lain.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kd">class</span><span class="w"> </span><span class="nc">User</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="nv">id</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">name</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">address</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">)</span> <span class="linenos" data-line="2"></span><span class="w"> </span> <span class="linenos" data-line="3"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">saveUserToDb</span><span class="p">(</span><span class="n">user</span><span class="p">:</span><span class="w"> </span><span class="n">User</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">validate</span><span class="p">(</span><span class="n">user</span><span class="p">:</span><span class="w"> </span><span class="n">User</span><span class="p">,</span><span class="w"> </span><span class="n">value</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="n">fieldName</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="n">require</span><span class="p">(</span><span class="n">value</span><span class="p">.</span><span class="na">isNotEmpty</span><span class="p">())</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="s">&quot;Can&#39;t save user </span><span class="si">${</span><span class="n">user</span><span class="p">.</span><span class="na">id</span><span class="si">}</span><span class="s">: empty </span><span class="si">$</span><span class="n">fieldName</span><span class="s">&quot;</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="7"></span><span class="w"> </span> <span class="linenos" data-line="8"></span><span class="w"> </span><span class="n">validate</span><span class="p">(</span><span class="n">user</span><span class="p">,</span><span class="w"> </span><span class="n">user</span><span class="p">.</span><span class="na">name</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Name&quot;</span><span class="p">)</span><span class="w"> </span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="n">validate</span><span class="p">(</span><span class="n">user</span><span class="p">,</span><span class="w"> </span><span class="n">user</span><span class="p">.</span><span class="na">address</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Address&quot;</span><span class="p">)</span> <span class="linenos" data-line="10"></span><span class="w"> </span><span class="c1">// Save user to the database </span> <span class="linenos" data-line="11"></span><span class="w"> </span><span class="p">...</span> <span class="linenos" data-line="12"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Kelas_bersifat_final_secara_bawaan">Kelas bersifat final secara bawaan</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=10" title="Sunting bagian: Kelas bersifat final secara bawaan" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=10" title="Sunting kode sumber bagian: Kelas bersifat final secara bawaan"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Di Kotlin, untuk mendapatkan kelas baru dari tipe kelas dasar, kelas dasar harus secara eksplisit ditandai sebagai "terbuka". Ini berbeda dengan kebanyakan bahasa berorientasi objek seperti Java di mana kelas terbuka secara bawaan. </p><p> Contoh kelas dasar yang terbuka untuk menurunkan subkelas baru darinya.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// open on the class means this class will allow derived classes</span> <span class="linenos" data-line="2"></span><span class="kd">open</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">MegaButton</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="3"></span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="c1">// no-open on a function means that </span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="c1">// polymorphic behavior disabled if function overridden in derived class</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">disable</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">...</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="7"></span> <span class="linenos" data-line="8"></span><span class="w"> </span><span class="c1">// open on a function means that</span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="c1">// polymorphic behavior allowed if function is overridden in derived class</span> <span class="linenos" data-line="10"></span><span class="w"> </span><span class="kd">open</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">animate</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">...</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="11"></span><span class="p">}</span> <span class="linenos" data-line="12"></span> <span class="linenos" data-line="13"></span><span class="kd">class</span><span class="w"> </span><span class="nc">GigaButton</span><span class="p">:</span><span class="w"> </span><span class="n">MegaButton</span><span class="p">()</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="14"></span> <span class="linenos" data-line="15"></span><span class="w"> </span><span class="c1">// Explicit use of override keyword required to override a function in derived class</span> <span class="linenos" data-line="16"></span><span class="w"> </span><span class="kd">override</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">animate</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;Giga Click!&quot;</span><span class="p">)</span><span class="w"> </span><span class="p">}</span><span class="w"> </span> <span class="linenos" data-line="17"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Kelas_abstrak_terbuka_secara_bawaan">Kelas abstrak terbuka secara bawaan</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=11" title="Sunting bagian: Kelas abstrak terbuka secara bawaan" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=11" title="Sunting kode sumber bagian: Kelas abstrak terbuka secara bawaan"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Kelas abstrak mendefinisikan fungsi placeholder abstrak atau "virtual murni" yang akan didefinisikan dalam kelas turunan. Kelas abstrak terbuka secara bawaan.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// No need for the open keyword here, it’s already open by default</span> <span class="linenos" data-line="2"></span><span class="kd">abstract</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">Animated</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="3"></span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="c1">// This virtual function is already open by default as well</span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="kd">abstract</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">animate</span><span class="p">()</span> <span class="linenos" data-line="6"></span><span class="w"> </span> <span class="linenos" data-line="7"></span><span class="w"> </span><span class="kd">open</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">stopAnimating</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="8"></span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">animateTwice</span><span class="p">()</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="10"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Kelas_bersifat_publik_secara_bawaan">Kelas bersifat publik secara bawaan</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=12" title="Sunting bagian: Kelas bersifat publik secara bawaan" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=12" title="Sunting kode sumber bagian: Kelas bersifat publik secara bawaan"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Kotlin menyediakan kata kunci berikut untuk membatasi visibilitas deklarasi tingkat atas, seperti kelas, dan untuk anggota kelas: <code>public</code>, <code>internal</code>, <code>protected</code>, dan <code>private</code>. </p><p>Penerapan kedalam anggota kelas: </p> <table class="wikitable"> <tbody><tr> <th>Kata kunci </th> <th>Visibilitas </th></tr> <tr> <td><code>public</code> (bawaan) </td> <td>Di mana pun </td></tr> <tr> <td><code>internal</code> </td> <td>Dalam modul </td></tr> <tr> <td><code>protected</code> </td> <td>Di dalam subkelas </td></tr> <tr> <td><code>private</code> </td> <td>Dalam satu kelas </td></tr></tbody></table> <p>Ketika diterapkan ke deklarasi tingkat atas: </p> <table class="wikitable"> <tbody><tr> <th>Kata kunci </th> <th>Visibilitas </th></tr> <tr> <td><code>public</code> (bawaan) </td> <td>Di mana pun </td></tr> <tr> <td><code>internal</code> </td> <td>Dalam modul </td></tr> <tr> <td><code>private</code> </td> <td>Dalam sebuah file </td></tr></tbody></table><p> Contoh:</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// Class is visible only to current module</span> <span class="linenos" data-line="2"></span><span class="kd">internal</span><span class="w"> </span><span class="kd">open</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">TalkativeButton</span><span class="p">{</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="c1">// method is only visible to current class </span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="kd">private</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">yell</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;Hey!&quot;</span><span class="p">)</span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="c1">// method is visible to current class and derived classes</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="kd">protected</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">whisper</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;Let&#39;s talk!&quot;</span><span class="p">)</span> <span class="linenos" data-line="7"></span><span class="p">}</span> <span class="linenos" data-line="8"></span><span class="kd">internal</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">MyTalkativeButton</span><span class="p">:</span><span class="w"> </span><span class="n">TalkativeButton</span><span class="p">()</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">utter</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">super</span><span class="p">.</span><span class="na">whisper</span><span class="p">()</span> <span class="linenos" data-line="10"></span><span class="p">}</span> <span class="linenos" data-line="11"></span><span class="n">MyTalkativeButton</span><span class="p">().</span><span class="na">utter</span><span class="p">()</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Konstruktor_utama_vs._konstruktor_sekunder">Konstruktor utama vs. konstruktor sekunder</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=13" title="Sunting bagian: Konstruktor utama vs. konstruktor sekunder" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=13" title="Sunting kode sumber bagian: Konstruktor utama vs. konstruktor sekunder"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Kotlin mendukung spesifikasi "konstruktor utama" sebagai bagian dari definisi kelas itu sendiri, yang terdiri dari daftar argumen yang mengikuti nama kelas. Daftar argumen ini mendukung sintaks yang diperluas pada daftar argumen fungsi standar Kotlin, yang memungkinkan deklarasi properti kelas di konstruktor utama, termasuk atribut visibilitas, ekstensibilitas, dan mutabilitas. Selain itu, saat mendefinisikan subkelas, properti di antarmuka super dan kelas super dapat diganti di konstruktor utama.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// Example of class using primary constructor syntax</span> <span class="linenos" data-line="2"></span><span class="c1">// (Only one constructor required for this class)</span> <span class="linenos" data-line="3"></span><span class="kd">open</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">BaseUser</span><span class="p">(</span><span class="kd">open</span><span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nv">isSubscribed</span><span class="p">:</span><span class="w"> </span><span class="kt">Boolean</span><span class="p">)</span> <span class="linenos" data-line="4"></span><span class="kd">open</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">PowerUser</span><span class="p">(</span><span class="kd">protected</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">nickname</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">final</span><span class="w"> </span><span class="kd">override</span><span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nv">isSubscribed</span><span class="p">:</span><span class="w"> </span><span class="kt">Boolean</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">):</span><span class="n">BaseUser</span><span class="p">(</span><span class="n">isSubscribed</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">}</span> </pre></div><p>Namun, dalam kasus di mana lebih dari satu konstruktor diperlukan untuk sebuah kelas, konstruktor yang lebih umum dapat digunakan disebut <b>sintaks konstruktor sekunder</b> yang sangat mirip dengan sintaks konstruktor yang digunakan di sebagian besar bahasa berorientasi objek seperti C++, C#, dan Java.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// Example of class using secondary constructor syntax</span> <span class="linenos" data-line="2"></span><span class="c1">// (more than one constructor required for this class)</span> <span class="linenos" data-line="3"></span><span class="kd">class</span><span class="w"> </span><span class="nc">Context</span> <span class="linenos" data-line="4"></span><span class="kd">class</span><span class="w"> </span><span class="nc">AttributeSet</span> <span class="linenos" data-line="5"></span><span class="kd">open</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">View</span><span class="p">(</span><span class="n">ctx</span><span class="p">:</span><span class="n">Context</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="k">constructor</span><span class="p">(</span><span class="n">ctx</span><span class="p">:</span><span class="w"> </span><span class="n">Context</span><span class="p">,</span><span class="w"> </span><span class="n">attr</span><span class="p">:</span><span class="w"> </span><span class="n">AttributeSet</span><span class="p">):</span><span class="w"> </span><span class="k">this</span><span class="p">(</span><span class="n">ctx</span><span class="p">)</span> <span class="linenos" data-line="7"></span><span class="p">}</span> <span class="linenos" data-line="8"></span><span class="kd">class</span><span class="w"> </span><span class="nc">MyButton</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="n">View</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="c1">// Constructor #1 </span> <span class="linenos" data-line="10"></span><span class="w"> </span><span class="k">constructor</span><span class="p">(</span><span class="n">ctx</span><span class="p">:</span><span class="w"> </span><span class="n">Context</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="k">super</span><span class="p">(</span><span class="n">ctx</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"> </span> <span class="linenos" data-line="11"></span><span class="w"> </span><span class="p">}</span><span class="w"> </span> <span class="linenos" data-line="12"></span><span class="w"> </span><span class="c1">// Constructor #2</span> <span class="linenos" data-line="13"></span><span class="w"> </span><span class="k">constructor</span><span class="p">(</span><span class="n">ctx</span><span class="p">:</span><span class="w"> </span><span class="n">Context</span><span class="p">,</span><span class="w"> </span><span class="n">attr</span><span class="p">:</span><span class="w"> </span><span class="n">AttributeSet</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="k">super</span><span class="p">(</span><span class="n">ctx</span><span class="p">,</span><span class="w"> </span><span class="n">attr</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="14"></span><span class="w"> </span><span class="c1">// ... </span> <span class="linenos" data-line="15"></span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="16"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Kelas_tertutup">Kelas tertutup</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=14" title="Sunting bagian: Kelas tertutup" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=14" title="Sunting kode sumber bagian: Kelas tertutup"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Kelas dan antarmuka yang disegel membatasi hierarki subkelas, yang berarti lebih banyak kontrol atas hierarki pewarisan. </p><p> Deklarasi antarmuka dan kelas yang disegel:</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kd">sealed</span><span class="w"> </span><span class="kd">interface</span><span class="w"> </span><span class="nc">Expr</span> <span class="linenos" data-line="2"></span><span class="kd">sealed</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">Job</span> </pre></div><p>Semua subclass dari kelas yang disegel didefinisikan pada waktu kompilasi. Tidak ada subkelas baru yang dapat ditambahkan ke dalamnya setelah kompilasi modul yang memiliki kelas tersegel. Misalnya, kelas yang disegel dalam file jar yang dikompilasi tidak dapat disubklasifikasikan.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kd">sealed</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">Vehicle</span> <span class="linenos" data-line="2"></span><span class="kd">data</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">Car</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="nv">brandName</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">owner</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">color</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">):</span><span class="w"> </span><span class="n">Vehicle</span><span class="p">()</span> <span class="linenos" data-line="3"></span><span class="kd">class</span><span class="w"> </span><span class="nc">Bike</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="nv">brandName</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">owner</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">color</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">):</span><span class="w"> </span><span class="n">Vehicle</span><span class="p">()</span> <span class="linenos" data-line="4"></span><span class="kd">class</span><span class="w"> </span><span class="nc">Tractor</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="nv">brandName</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">owner</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">color</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="p">):</span><span class="w"> </span><span class="n">Vehicle</span><span class="p">()</span> <span class="linenos" data-line="5"></span><span class="kd">val</span><span class="w"> </span><span class="nv">kiaCar</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Car</span><span class="p">(</span><span class="s">&quot;KIA&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;John&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Blue&quot;</span><span class="p">)</span> <span class="linenos" data-line="6"></span><span class="kd">val</span><span class="w"> </span><span class="nv">hyundaiCar</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Car</span><span class="p">(</span><span class="s">&quot;Hyundai&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Britto&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Green&quot;</span><span class="p">)</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Kelas_data">Kelas data</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=15" title="Sunting bagian: Kelas data" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=15" title="Sunting kode sumber bagian: Kelas data"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Konstruksi <code>data class</code> Kotlin mendefinisikan kelas yang tujuan utamanya adalah menyimpan data. Konstruksi ini mirip dengan kelas normal kecuali bahwa fungsi kunci <code>equals</code>, <code>toString</code>, dan kode <code>hashCode</code> secara otomatis dihasilkan dari properti kelas. Di Jawa, kelas seperti itu diharapkan menyediakan berbagai macam fungsi standar seperti itu. Kelas data tidak diharuskan untuk mendeklarasikan metode apa pun, meskipun masing-masing harus memiliki setidaknya satu properti. Kelas data sering ditulis tanpa badan, meskipun dimungkinkan untuk memberikan kelas data metode apa pun atau konstruktor sekunder yang valid untuk kelas lain mana pun. Kata kunci <code>data</code> digunakan sebelum kata kunci <code>class</code> untuk mendefinisikan kelas data.<sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">&#91;</span>27<span class="cite-bracket">&#93;</span></a></sup></p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// data class with parameters and their optional default values</span> <span class="linenos" data-line="2"></span><span class="kd">data</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">Book</span><span class="p">(</span><span class="kd">val</span><span class="w"> </span><span class="nv">name</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&quot;&quot;</span><span class="p">,</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">price</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="m">0</span><span class="p">)</span> <span class="linenos" data-line="3"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">args</span><span class="p">:</span><span class="w"> </span><span class="n">Array</span><span class="o">&lt;</span><span class="kt">String</span><span class="o">&gt;</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="c1">// create a data class object like any other class object</span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nv">book1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Book</span><span class="p">(</span><span class="s">&quot;Kotlin Programming&quot;</span><span class="p">,</span><span class="w"> </span><span class="m">250</span><span class="p">)</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="n">book1</span><span class="p">)</span> <span class="linenos" data-line="7"></span><span class="w"> </span><span class="c1">// output: Book(name=Kotlin Programming, price=250)</span> <span class="linenos" data-line="8"></span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Shell_interaktif_Kotlin">Shell interaktif Kotlin</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=16" title="Sunting bagian: Shell interaktif Kotlin" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=16" title="Sunting kode sumber bagian: Shell interaktif Kotlin"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-highlight mw-highlight-lang-pycon mw-content-ltr" dir="ltr"><pre><span></span><span class="go">$ kotlinc-jvm</span> <span class="go">type :help for help; :quit for quit</span> <span class="gp">&gt;&gt;&gt; </span><span class="mi">2</span> <span class="o">+</span> <span class="mi">2</span> <span class="go">4</span> <span class="gp">&gt;&gt;&gt; </span><span class="n">println</span><span class="p">(</span><span class="s2">&quot;Hello, World!&quot;</span><span class="p">)</span> <span class="go">Hello, World!</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Kotlin_sebagai_bahasa_skrip">Kotlin sebagai bahasa skrip</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=17" title="Sunting bagian: Kotlin sebagai bahasa skrip" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=17" title="Sunting kode sumber bagian: Kotlin sebagai bahasa skrip"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Kotlin juga dapat digunakan sebagai bahasa scripting. Skrip adalah file sumber Kotlin (.kts) dengan kode yang dapat dieksekusi tingkat atas.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// list_folders.kts</span> <span class="linenos" data-line="2"></span><span class="k">import</span><span class="w"> </span><span class="nn">java.io.File</span> <span class="linenos" data-line="3"></span><span class="kd">val</span><span class="w"> </span><span class="nv">folders</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">File</span><span class="p">(</span><span class="n">args</span><span class="o">[</span><span class="m">0</span><span class="o">]</span><span class="p">).</span><span class="na">listFiles</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="n">file</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">file</span><span class="p">.</span><span class="na">isDirectory</span><span class="p">()</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="4"></span><span class="n">folders</span><span class="o">?.</span><span class="na">forEach</span><span class="p">(</span><span class="o">::</span><span class="n">println</span><span class="p">)</span> </pre></div><p>Skrip dapat dijalankan dengan meneruskan opsi <code>-script</code> dan file skrip yang sesuai ke kompiler.</p><div class="mw-highlight mw-highlight-lang-bash mw-content-ltr" dir="ltr"><pre><span></span>$<span class="w"> </span>kotlinc<span class="w"> </span>-script<span class="w"> </span>list_folders.kts<span class="w"> </span><span class="s2">&quot;path_to_folder_to_inspect&quot;</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Keamanan_kosong">Keamanan kosong</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=18" title="Sunting bagian: Keamanan kosong" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=18" title="Sunting kode sumber bagian: Keamanan kosong"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Kotlin membedakan antara tipe data <a href="/w/index.php?title=Tidak_dapat_dibatalkan&amp;action=edit&amp;redlink=1" class="new" title="Tidak dapat dibatalkan (halaman belum tersedia)">nullable</a> dan non-nullable. Semua objek nullable harus dideklarasikan dengan tanda "?" postfix setelah nama tipe. Operasi pada objek yang dapat dibatalkan memerlukan perhatian khusus dari pengembang: pemeriksaan nol harus dilakukan sebelum menggunakan nilai. Kotlin menyediakan operator null-safe untuk membantu developer. </p> <ul><li>?. (<a href="https://en.wikipedia.org/wiki/Safe_navigation_operator" class="extiw" title="en:Safe navigation operator">operator navigasi aman</a>) dapat digunakan untuk mengakses metode atau properti objek yang mungkin null dengan aman. Jika objeknya nol, metode tidak akan dipanggil dan ekspresi dievaluasi menjadi nol.</li> <li>?: (<a href="https://en.wikipedia.org/wiki/Null_coalescing_operator" class="extiw" title="en:Null coalescing operator">operator penggabungan kosong</a>) sering disebut sebagai <a href="https://en.wikipedia.org/wiki/Elvis_operator" class="extiw" title="en:Elvis operator">operator Elvis</a>:</li></ul> <div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">sayHello</span><span class="p">(</span><span class="n">maybe</span><span class="p">:</span><span class="w"> </span><span class="kt">String?</span><span class="p">,</span><span class="w"> </span><span class="n">neverNull</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="2"></span><span class="w"> </span><span class="c1">// use of elvis operator</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">name</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">maybe</span><span class="w"> </span><span class="o">?:</span><span class="w"> </span><span class="s">&quot;stranger&quot;</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="s">&quot;Hello </span><span class="si">$</span><span class="n">name</span><span class="s">&quot;</span><span class="p">)</span> <span class="linenos" data-line="5"></span><span class="p">}</span> </pre></div><p>Contoh penggunaan operator navigasi aman:</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// returns null if...</span> <span class="linenos" data-line="2"></span><span class="c1">// - foo() returns null,</span> <span class="linenos" data-line="3"></span><span class="c1">// - or if foo() is non-null, but bar() returns null,</span> <span class="linenos" data-line="4"></span><span class="c1">// - or if foo() and bar() are non-null, but baz() returns null.</span> <span class="linenos" data-line="5"></span><span class="c1">// vice versa, return value is non-null if and only if foo(), bar() and baz() are non-null</span> <span class="linenos" data-line="6"></span><span class="n">foo</span><span class="p">()</span><span class="o">?.</span><span class="na">bar</span><span class="p">()</span><span class="o">?.</span><span class="na">baz</span><span class="p">()</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Lambda">Lambda</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=19" title="Sunting bagian: Lambda" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=19" title="Sunting kode sumber bagian: Lambda"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Kotlin menyediakan dukungan untuk <a href="/w/index.php?title=Fungsi_tingkat_tinggi&amp;action=edit&amp;redlink=1" class="new" title="Fungsi tingkat tinggi (halaman belum tersedia)">fungsi tingkat tinggi</a> dan fungsi <a href="/w/index.php?title=Fungsi_anonim&amp;action=edit&amp;redlink=1" class="new" title="Fungsi anonim (halaman belum tersedia)">anonim</a> atau lambda.<sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">&#91;</span>28<span class="cite-bracket">&#93;</span></a></sup></p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// the following function takes a lambda, f, and executes f passing it the string &quot;lambda&quot;</span> <span class="linenos" data-line="2"></span><span class="c1">// note that (String) -&gt; Unit indicates a lambda with a String parameter and Unit return type</span> <span class="linenos" data-line="3"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">executeLambda</span><span class="p">(</span><span class="n">f</span><span class="p">:</span><span class="w"> </span><span class="p">(</span><span class="kt">String</span><span class="p">)</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">Unit</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="n">f</span><span class="p">(</span><span class="s">&quot;lambda&quot;</span><span class="p">)</span> <span class="linenos" data-line="5"></span><span class="p">}</span> </pre></div><p>Lambdas dideklarasikan menggunakan kurung kurawal,<span style="font-family: monospace, monospace;">{ </span>} . Jika lambda mengambil parameter, mereka dideklarasikan dalam kurung kurawal dan diikuti oleh<span style="font-family: monospace, monospace;">-&gt;</span> operator.</p><div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c1">// the following statement defines a lambda that takes a single parameter and passes it to the println function</span> <span class="linenos" data-line="2"></span><span class="kd">val</span><span class="w"> </span><span class="nv">l</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="n">c</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="kt">Any?</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="n">c</span><span class="p">)</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="3"></span><span class="c1">// lambdas with no parameters may simply be defined using { }</span> <span class="linenos" data-line="4"></span><span class="kd">val</span><span class="w"> </span><span class="nv">l2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="n">print</span><span class="p">(</span><span class="s">&quot;no parameters&quot;</span><span class="p">)</span><span class="w"> </span><span class="p">}</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Contoh_kompleks_&quot;hello_world&quot;"><span id="Contoh_kompleks_.22hello_world.22"></span>Contoh kompleks "<i>hello world</i>"</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=20" title="Sunting bagian: Contoh kompleks &quot;hello world&quot;" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=20" title="Sunting kode sumber bagian: Contoh kompleks &quot;hello world&quot;"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-highlight mw-highlight-lang-kotlin mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kd">fun</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">args</span><span class="p">:</span><span class="w"> </span><span class="n">Array</span><span class="o">&lt;</span><span class="kt">String</span><span class="o">&gt;</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="2"></span><span class="w"> </span><span class="n">greet</span><span class="w"> </span><span class="p">{</span> <span class="linenos" data-line="3"></span><span class="w"> </span><span class="n">to</span><span class="p">.</span><span class="na">place</span> <span class="linenos" data-line="4"></span><span class="w"> </span><span class="p">}.</span><span class="na">print</span><span class="p">()</span> <span class="linenos" data-line="5"></span><span class="p">}</span> <span class="linenos" data-line="6"></span> <span class="linenos" data-line="7"></span><span class="c1">// Inline higher-order functions</span> <span class="linenos" data-line="8"></span><span class="kd">inline</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="nf">greet</span><span class="p">(</span><span class="n">s</span><span class="p">:</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="o">-&gt;</span><span class="w"> </span><span class="kt">String</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">greeting</span><span class="w"> </span><span class="n">andAnother</span><span class="w"> </span><span class="n">s</span><span class="p">()</span> <span class="linenos" data-line="9"></span> <span class="linenos" data-line="10"></span><span class="c1">// Infix functions, extensions, type inference, nullable types, </span> <span class="linenos" data-line="11"></span><span class="c1">// lambda expressions, labeled this, Elvis operator (?:)</span> <span class="linenos" data-line="12"></span><span class="kd">infix</span><span class="w"> </span><span class="kd">fun</span><span class="w"> </span><span class="n">String</span><span class="p">.</span><span class="nf">andAnother</span><span class="p">(</span><span class="n">other</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="kt">Any?</span><span class="p">)</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">buildString</span><span class="p">()</span><span class="w"> </span> <span class="linenos" data-line="13"></span><span class="p">{</span><span class="w"> </span> <span class="linenos" data-line="14"></span><span class="w"> </span><span class="n">append</span><span class="p">(</span><span class="k">this</span><span class="nd">@andAnother</span><span class="p">);</span><span class="w"> </span><span class="n">append</span><span class="p">(</span><span class="s">&quot; &quot;</span><span class="p">);</span><span class="w"> </span><span class="n">append</span><span class="p">(</span><span class="n">other</span><span class="w"> </span><span class="o">?:</span><span class="w"> </span><span class="s">&quot;&quot;</span><span class="p">)</span><span class="w"> </span> <span class="linenos" data-line="15"></span><span class="p">}</span> <span class="linenos" data-line="16"></span> <span class="linenos" data-line="17"></span><span class="c1">// Immutable types, delegated properties, lazy initialization, string templates</span> <span class="linenos" data-line="18"></span><span class="kd">val</span><span class="w"> </span><span class="nv">greeting</span><span class="w"> </span><span class="k">by</span><span class="w"> </span><span class="n">lazy</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">doubleEl</span><span class="p">:</span><span class="w"> </span><span class="kt">String</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&quot;ll&quot;</span><span class="p">;</span><span class="w"> </span><span class="s">&quot;he</span><span class="si">${</span><span class="n">doubleEl</span><span class="si">}</span><span class="s">o&quot;</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="19"></span> <span class="linenos" data-line="20"></span><span class="c1">// Sealed classes, companion objects</span> <span class="linenos" data-line="21"></span><span class="kd">sealed</span><span class="w"> </span><span class="kd">class</span><span class="w"> </span><span class="nc">to</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="kd">companion</span><span class="w"> </span><span class="kd">object</span><span class="w"> </span><span class="err">{ </span><span class="nc">val</span><span class="w"> </span><span class="n">place</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&quot;world&quot;</span><span class="p">}</span><span class="w"> </span><span class="p">}</span> <span class="linenos" data-line="22"></span> <span class="linenos" data-line="23"></span><span class="c1">// Extensions, Unit</span> <span class="linenos" data-line="24"></span><span class="kd">fun</span><span class="w"> </span><span class="n">String</span><span class="p">.</span><span class="nf">print</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">println</span><span class="p">(</span><span class="k">this</span><span class="p">)</span> </pre></div> <div class="mw-heading mw-heading2"><h2 id="Peralatan">Peralatan</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=21" title="Sunting bagian: Peralatan" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=21" title="Sunting kode sumber bagian: Peralatan"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/w/index.php?title=IntelliJ_IDEA&amp;action=edit&amp;redlink=1" class="new" title="IntelliJ IDEA (halaman belum tersedia)">IntelliJ IDEA</a> memiliki dukungan plug-in untuk Kotlin.<sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">&#91;</span>29<span class="cite-bracket">&#93;</span></a></sup> IntelliJ IDEA 15 adalah versi pertama yang menggabungkan plugin Kotlin di IntelliJ Installer, dan memberikan dukungan Kotlin secara langsung.<sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">&#91;</span>30<span class="cite-bracket">&#93;</span></a></sup></li> <li>JetBrains juga menyediakan plugin untuk <a href="/wiki/Eclipse_(perangkat_lunak)" title="Eclipse (perangkat lunak)">Eclipse</a>.<sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">&#91;</span>31<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">&#91;</span>32<span class="cite-bracket">&#93;</span></a></sup></li> <li>Integrasi dengan alat build Java umum didukung termasuk <a href="/w/index.php?title=Apache_Maven&amp;action=edit&amp;redlink=1" class="new" title="Apache Maven (halaman belum tersedia)">Apache Maven</a>,<sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">&#91;</span>33<span class="cite-bracket">&#93;</span></a></sup> <a href="/w/index.php?title=Apache_Semut&amp;action=edit&amp;redlink=1" class="new" title="Apache Semut (halaman belum tersedia)">Apache Ant</a>,<sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">&#91;</span>34<span class="cite-bracket">&#93;</span></a></sup> dan <a href="/w/index.php?title=Gradle&amp;action=edit&amp;redlink=1" class="new" title="Gradle (halaman belum tersedia)">Gradle</a>.<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">&#91;</span>35<span class="cite-bracket">&#93;</span></a></sup></li> <li><a href="/wiki/Android_Studio" title="Android Studio">Android Studio</a> (berdasarkan IntelliJ IDEA) memiliki dukungan resmi untuk Kotlin, mulai dari Android Studio 3.<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">&#91;</span>36<span class="cite-bracket">&#93;</span></a></sup></li> <li><a href="/wiki/Emacs" title="Emacs">Emacs</a> memiliki Mode Kotlin di repositori paket Melpa-nya.</li> <li><a href="/wiki/Vim_(penyunting_teks)" title="Vim (penyunting teks)">Vim</a> memiliki plugin yang dikelola di GitHub.<sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">&#91;</span>37<span class="cite-bracket">&#93;</span></a></sup></li> <li><a rel="nofollow" class="external text" href="https://json2kotlin.com/">Json2Kotlin</a> menghasilkan kode Kotlin asli gaya <a href="/w/index.php?title=Objek_Jawa_kuno_biasa&amp;action=edit&amp;redlink=1" class="new" title="Objek Jawa kuno biasa (halaman belum tersedia)">POJO</a> untuk pemetaan respons <a href="/wiki/Layanan_web" title="Layanan web">layanan web</a>.</li></ul> <div class="mw-heading mw-heading2"><h2 id="Aplikasi">Aplikasi</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=22" title="Sunting bagian: Aplikasi" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=22" title="Sunting kode sumber bagian: Aplikasi"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Saat Kotlin diumumkan sebagai bahasa pengembangan Android resmi di <a href="/wiki/Google_I/O" title="Google I/O">Google I/O</a> pada Mei 2017, Kotlin menjadi bahasa ketiga yang didukung penuh untuk Android, selain Java dan C++.<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">&#91;</span>38<span class="cite-bracket">&#93;</span></a></sup> Pada tahun 2020, Kotlin masih paling banyak digunakan di Android, dengan Google memperkirakan bahwa 70% dari 1000 aplikasi teratas di Play Store ditulis dalam Kotlin. Google sendiri memiliki 60 aplikasi yang ditulis dalam Kotlin, termasuk Maps dan Drive. Banyak aplikasi Android, seperti Google Home, sedang dalam proses migrasi ke Kotlin, jadi gunakan Kotlin dan Java. Kotlin di Android dipandang bermanfaat karena <a href="/w/index.php?title=Keamanan_penunjuk_nol&amp;action=edit&amp;redlink=1" class="new" title="Keamanan penunjuk nol (halaman belum tersedia)">keamanan penunjuk nolnya</a> serta fitur-fiturnya yang membuat kode lebih pendek dan lebih mudah dibaca.<sup id="cite_ref-39" class="reference"><a href="#cite_note-39"><span class="cite-bracket">&#91;</span>39<span class="cite-bracket">&#93;</span></a></sup> </p><p>Selain penggunaannya yang menonjol di Android, Kotlin mendapatkan daya tarik dalam pengembangan sisi server. <a href="/w/index.php?title=Kerangka_Musim_Semi&amp;action=edit&amp;redlink=1" class="new" title="Kerangka Musim Semi (halaman belum tersedia)">Spring Framework</a> secara resmi menambahkan dukungan Kotlin dengan versi 5 pada 4 Januari 2017.<sup id="cite_ref-40" class="reference"><a href="#cite_note-40"><span class="cite-bracket">&#91;</span>40<span class="cite-bracket">&#93;</span></a></sup> Untuk lebih mendukung Kotlin, Spring telah menerjemahkan semua dokumentasinya ke Kotlin dan menambahkan dukungan bawaan untuk banyak fitur khusus Kotlin seperti coroutine.<sup id="cite_ref-41" class="reference"><a href="#cite_note-41"><span class="cite-bracket">&#91;</span>41<span class="cite-bracket">&#93;</span></a></sup> Selain Spring, JetBrains telah menghasilkan kerangka kerja pertama Kotlin yang disebut Ktor untuk membangun aplikasi web.<sup id="cite_ref-42" class="reference"><a href="#cite_note-42"><span class="cite-bracket">&#91;</span>42<span class="cite-bracket">&#93;</span></a></sup> </p><p>Pada tahun 2020, JetBrains menemukan dalam survei pengembang yang menggunakan Kotlin bahwa 56% menggunakan Kotlin untuk aplikasi seluler, sementara 47% menggunakannya untuk back-end web. Lebih dari sepertiga pengembang Kotlin mengatakan bahwa mereka bermigrasi ke Kotlin dari bahasa lain. Sebagian besar pengguna Kotlin menargetkan Android (atau sebaliknya di JVM), dengan hanya 6% yang menggunakan Kotlin Native.<sup id="cite_ref-43" class="reference"><a href="#cite_note-43"><span class="cite-bracket">&#91;</span>43<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading2"><h2 id="Adopsi">Adopsi</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=23" title="Sunting bagian: Adopsi" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=23" title="Sunting kode sumber bagian: Adopsi"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Pada tahun 2018, Kotlin adalah bahasa dengan pertumbuhan tercepat di GitHub dengan 2,6 kali lebih banyak pengembang dibandingkan tahun 2017.<sup id="cite_ref-44" class="reference"><a href="#cite_note-44"><span class="cite-bracket">&#91;</span>44<span class="cite-bracket">&#93;</span></a></sup> Ini adalah bahasa pemrograman keempat yang paling dicintai menurut Survei Pengembang Stack Overflow 2020.<sup id="cite_ref-45" class="reference"><a href="#cite_note-45"><span class="cite-bracket">&#91;</span>45<span class="cite-bracket">&#93;</span></a></sup> </p><p>Kotlin juga dianugerahi O'Reilly Open Source Software Conference Breakout Award untuk 2019.<sup id="cite_ref-46" class="reference"><a href="#cite_note-46"><span class="cite-bracket">&#91;</span>46<span class="cite-bracket">&#93;</span></a></sup> </p><p>Banyak perusahaan/organisasi telah menggunakan Kotlin untuk pengembangan backend: </p> <ul><li><i>Google<sup id="cite_ref-47" class="reference"><a href="#cite_note-47"><span class="cite-bracket">&#91;</span>47<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Norwegian Tax Administration<sup id="cite_ref-48" class="reference"><a href="#cite_note-48"><span class="cite-bracket">&#91;</span>48<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Gradle<sup id="cite_ref-49" class="reference"><a href="#cite_note-49"><span class="cite-bracket">&#91;</span>49<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Amazon<sup id="cite_ref-50" class="reference"><a href="#cite_note-50"><span class="cite-bracket">&#91;</span>50<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Cash App<sup id="cite_ref-51" class="reference"><a href="#cite_note-51"><span class="cite-bracket">&#91;</span>51<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>JetBrains<sup id="cite_ref-52" class="reference"><a href="#cite_note-52"><span class="cite-bracket">&#91;</span>52<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Flux<sup id="cite_ref-53" class="reference"><a href="#cite_note-53"><span class="cite-bracket">&#91;</span>53<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Allegro<sup id="cite_ref-54" class="reference"><a href="#cite_note-54"><span class="cite-bracket">&#91;</span>54<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>OLX<sup id="cite_ref-55" class="reference"><a href="#cite_note-55"><span class="cite-bracket">&#91;</span>55<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Shazam<sup id="cite_ref-56" class="reference"><a href="#cite_note-56"><span class="cite-bracket">&#91;</span>56<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Pivotal<sup id="cite_ref-57" class="reference"><a href="#cite_note-57"><span class="cite-bracket">&#91;</span>57<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Rocket Travel<sup id="cite_ref-58" class="reference"><a href="#cite_note-58"><span class="cite-bracket">&#91;</span>58<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Meshcloud<sup id="cite_ref-59" class="reference"><a href="#cite_note-59"><span class="cite-bracket">&#91;</span>59<span class="cite-bracket">&#93;</span></a></sup></i></li> <li>Zalando<sup id="cite_ref-60" class="reference"><a href="#cite_note-60"><span class="cite-bracket">&#91;</span>60<span class="cite-bracket">&#93;</span></a></sup></li></ul> <p>Beberapa perusahaan/organisasi telah menggunakan Kotlin untuk <a href="/wiki/Pengembangan_web" title="Pengembangan web">pengembangan web</a>: </p> <ul><li><i>JetBrains<sup id="cite_ref-61" class="reference"><a href="#cite_note-61"><span class="cite-bracket">&#91;</span>61<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Data2viz<sup id="cite_ref-62" class="reference"><a href="#cite_note-62"><span class="cite-bracket">&#91;</span>62<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Fritz2<sup id="cite_ref-63" class="reference"><a href="#cite_note-63"><span class="cite-bracket">&#91;</span>63<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Barclay's Bank<sup id="cite_ref-64" class="reference"><a href="#cite_note-64"><span class="cite-bracket">&#91;</span>64<span class="cite-bracket">&#93;</span></a></sup></i></li></ul> <p>Sejumlah perusahaan secara terbuka menyatakan bahwa mereka menggunakan Kotlin: </p> <ul><li><i>DripStat<sup id="cite_ref-65" class="reference"><a href="#cite_note-65"><span class="cite-bracket">&#91;</span>65<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i><a href="https://en.wikipedia.org/wiki/Basecamp_(software)" class="extiw" title="en:Basecamp (software)">Basecamp</a><sup id="cite_ref-66" class="reference"><a href="#cite_note-66"><span class="cite-bracket">&#91;</span>66<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i><a href="https://en.wikipedia.org/wiki/Pinterest" class="extiw" title="en:Pinterest">Pinterest</a><sup id="cite_ref-67" class="reference"><a href="#cite_note-67"><span class="cite-bracket">&#91;</span>67<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Coursera<sup id="cite_ref-68" class="reference"><a href="#cite_note-68"><span class="cite-bracket">&#91;</span>68<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Netflix<sup id="cite_ref-69" class="reference"><a href="#cite_note-69"><span class="cite-bracket">&#91;</span>69<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Uber<sup id="cite_ref-70" class="reference"><a href="#cite_note-70"><span class="cite-bracket">&#91;</span>70<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Cash App<sup id="cite_ref-71" class="reference"><a href="#cite_note-71"><span class="cite-bracket">&#91;</span>71<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Trello<sup id="cite_ref-72" class="reference"><a href="#cite_note-72"><span class="cite-bracket">&#91;</span>72<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Duolingo<sup id="cite_ref-73" class="reference"><a href="#cite_note-73"><span class="cite-bracket">&#91;</span>73<span class="cite-bracket">&#93;</span></a></sup></i></li> <li><i>Corda</i>, buku besar terdistribusi yang dikembangkan oleh konsorsium bank terkenal (seperti <a href="/wiki/Goldman_Sachs" title="Goldman Sachs">Goldman Sachs</a>, <a href="/wiki/Wells_Fargo" title="Wells Fargo">Wells Fargo</a>, <a href="/wiki/JPMorgan_Chase" title="JPMorgan Chase">JP Morgan</a>, <a href="/wiki/Deutsche_Bank" title="Deutsche Bank">Deutsche Bank</a>, <a href="/wiki/UBS" title="UBS">UBS</a>, <a href="/wiki/HSBC" title="HSBC">HSBC</a>, <a href="/wiki/BNP_Paribas" title="BNP Paribas">BNP Paribas</a>, <a href="/wiki/Soci%C3%A9t%C3%A9_G%C3%A9n%C3%A9rale" title="Société Générale">Société Générale</a>), memiliki lebih dari 90% kode Kotlin dalam basis kodenya.<sup id="cite_ref-74" class="reference"><a href="#cite_note-74"><span class="cite-bracket">&#91;</span>74<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Pranala_luar">Pranala luar</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=24" title="Sunting bagian: Pranala luar" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=24" title="Sunting kode sumber bagian: Pranala luar"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="https://en.wikipedia.org/wiki/Comparison_of_programming_languages" class="extiw" title="en:Comparison of programming languages">Perbandingan bahasa pemrograman</a></li> <li><span class="official-website"><span class="url"><a rel="nofollow" class="external text" href="https://kotlinlang.org">Situs web resmi</a></span></span></li> <li><a rel="nofollow" class="external text" href="http://try.kotlinlang.org/">Sampel kode</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Rujukan">Rujukan</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=25" title="Sunting bagian: Rujukan" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=25" title="Sunting kode sumber bagian: Rujukan"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r18833634">.mw-parser-output .reflist{font-size:90%;margin-bottom:0.5em;list-style-type:decimal}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-wikidata-e52a9ccf21c347a91d72f37ae4605108aa7c870e-v3-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-wikidata-e52a9ccf21c347a91d72f37ae4605108aa7c870e-v3_1-0">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://github.com/JetBrains/kotlin/releases/tag/v2.1.10">"Release Kotlin 2.1.10"</a>. 27 Januari 2025<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">27 Januari</span> 2025</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Release+Kotlin+2.1.10&amp;rft.date=2025-01-27&amp;rft_id=https%3A%2F%2Fgithub.com%2FJetBrains%2Fkotlin%2Freleases%2Ftag%2Fv2.1.10&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><cite class="citation web">Alina Grebenkina (2021-02-04). <a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2021/02/kotlin-1-4-30-released/">"1.4.30 Is Released With a New JVM Backend and Language and Multiplatform Features"</a>. <i>The Kotlin Blog</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2021-03-15</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=The+Kotlin+Blog&amp;rft.atitle=1.4.30+Is+Released+With+a+New+JVM+Backend+and+Language+and+Multiplatform+Features&amp;rft.date=2021-02-04&amp;rft.au=Alina+Grebenkina&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2021%2F02%2Fkotlin-1-4-30-released%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-oracle_interview-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-oracle_interview_3-0">^</a></b></span> <span class="reference-text"><cite class="citation web">Heiss, Janice (April 2013). <a rel="nofollow" class="external text" href="http://www.oracle.com/technetwork/articles/java/breslav-1932170.html">"The Advent of Kotlin: A Conversation with JetBrains' Andrey Breslav"</a>. <i>oracle.com</i>. Oracle Technology Network<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">February 2,</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=oracle.com&amp;rft.atitle=The+Advent+of+Kotlin%3A+A+Conversation+with+JetBrains%27+Andrey+Breslav&amp;rft.date=2013-04&amp;rft.aulast=Heiss&amp;rft.aufirst=Janice&amp;rft_id=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Farticles%2Fjava%2Fbreslav-1932170.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite id="CITEREFMobius2015" class="citation">Mobius (2015-01-08), <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=VU_L2_XGQ9s"><i>Андрей Бреслав — Kotlin для Android: коротко и ясно</i></a><span class="reference-accessdate">, diakses tanggal <span class="nowrap">2017-05-28</span></span></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=%D0%90%D0%BD%D0%B4%D1%80%D0%B5%D0%B9+%D0%91%D1%80%D0%B5%D1%81%D0%BB%D0%B0%D0%B2+%E2%80%94+Kotlin+%D0%B4%D0%BB%D1%8F+Android%3A+%D0%BA%D0%BE%D1%80%D0%BE%D1%82%D0%BA%D0%BE+%D0%B8+%D1%8F%D1%81%D0%BD%D0%BE&amp;rft.date=2015-01-08&amp;rft.au=Mobius&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DVU_L2_XGQ9s&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://developer.android.com/kotlin">"Kotlin dan Android"</a>. <i>Android Developers</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2019-03-22</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Android+Developers&amp;rft.atitle=Kotlin+dan+Android&amp;rft_id=https%3A%2F%2Fdeveloper.android.com%2Fkotlin&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-announce3-6"><span class="mw-cite-backlink">^ <a href="#cite_ref-announce3_6-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-announce3_6-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web">Krill, Paul (22 July 2011). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190907161741/https://www.infoworld.com/article/2622405/jetbrains-readies-jvm-based-language.html">"JetBrains readies JVM language Kotlin"</a>. <i><a href="/w/index.php?title=InfoWorld&amp;action=edit&amp;redlink=1" class="new" title="InfoWorld (halaman belum tersedia)">InfoWorld</a></i>. Diarsipkan dari <a rel="nofollow" class="external text" href="https://www.infoworld.com/d/application-development/jetbrains-readies-jvm-based-language-167875">versi asli</a> tanggal 7 September 2019<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2 February</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=InfoWorld&amp;rft.atitle=JetBrains+readies+JVM+language+Kotlin&amp;rft.date=2011-07-22&amp;rft.aulast=Krill&amp;rft.aufirst=Paul&amp;rft_id=https%3A%2F%2Fwww.infoworld.com%2Fd%2Fapplication-development%2Fjetbrains-readies-jvm-based-language-167875&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span> <span style="display:none;font-size:100%" class="error citation-comment">Parameter <code style="color:inherit; border:inherit; padding:inherit;">&#124;url-status=</code> yang tidak diketahui akan diabaikan (<a href="/wiki/Bantuan:Galat_CS1#parameter_ignored" title="Bantuan:Galat CS1">bantuan</a>)</span></span> </li> <li id="cite_note-open_source3-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-open_source3_7-0">^</a></b></span> <span class="reference-text"><cite class="citation web">Waters, John (22 February 2012). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140218225151/https://adtmag.com/articles/2012/02/22/kotlin-goes-open-source.aspx">"Kotlin Goes Open Source"</a>. <i>ADTmag.com</i>. 1105 Enterprise Computing Group. Diarsipkan dari <a rel="nofollow" class="external text" href="https://adtmag.com/articles/2012/02/22/kotlin-goes-open-source.aspx">versi asli</a> tanggal 18 February 2014<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2 February</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=ADTmag.com&amp;rft.atitle=Kotlin+Goes+Open+Source&amp;rft.date=2012-02-22&amp;rft.aulast=Waters&amp;rft.aufirst=John&amp;rft_id=https%3A%2F%2Fadtmag.com%2Farticles%2F2012%2F02%2F22%2Fkotlin-goes-open-source.aspx&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span> <span style="display:none;font-size:100%" class="error citation-comment">Parameter <code style="color:inherit; border:inherit; padding:inherit;">&#124;url-status=</code> yang tidak diketahui akan diabaikan (<a href="/wiki/Bantuan:Galat_CS1#parameter_ignored" title="Bantuan:Galat CS1">bantuan</a>)</span></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite id="CITEREFMobius2015" class="citation">Mobius (8 January 2015), <a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=VU_L2_XGQ9s"><i>Андрей Бреслав — Kotlin для Android: коротко и ясно</i></a><span class="reference-accessdate">, diakses tanggal <span class="nowrap">28 May</span> 2017</span></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=%D0%90%D0%BD%D0%B4%D1%80%D0%B5%D0%B9+%D0%91%D1%80%D0%B5%D1%81%D0%BB%D0%B0%D0%B2+%E2%80%94+Kotlin+%D0%B4%D0%BB%D1%8F+Android%3A+%D0%BA%D0%BE%D1%80%D0%BE%D1%82%D0%BA%D0%BE+%D0%B8+%D1%8F%D1%81%D0%BD%D0%BE&amp;rft.date=2015-01-08&amp;rft.au=Mobius&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DVU_L2_XGQ9s&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite class="citation web">Kieron Murphy (4 October 1996). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190315171946/http://www.javaworld.com/article/2077265/so-why-did-they-decide-to-call-it-java-.html">"So why did they decide to call it Java?"</a>. <i><a href="/w/index.php?title=JavaWorld&amp;action=edit&amp;redlink=1" class="new" title="JavaWorld (halaman belum tersedia)">JavaWorld</a></i>. Diarsipkan dari <a rel="nofollow" class="external text" href="https://www.javaworld.com/article/2077265/core-java/so-why-did-they-decide-to-call-it-java-.html">versi asli</a> tanggal 15 March 2019<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">14 October</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=JavaWorld&amp;rft.atitle=So+why+did+they+decide+to+call+it+Java%3F&amp;rft.date=1996-10-04&amp;rft.au=Kieron+Murphy&amp;rft_id=https%3A%2F%2Fwww.javaworld.com%2Farticle%2F2077265%2Fcore-java%2Fso-why-did-they-decide-to-call-it-java-.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span> <span style="display:none;font-size:100%" class="error citation-comment">Parameter <code style="color:inherit; border:inherit; padding:inherit;">&#124;url-status=</code> yang tidak diketahui akan diabaikan (<a href="/wiki/Bantuan:Galat_CS1#parameter_ignored" title="Bantuan:Galat CS1">bantuan</a>)</span></span> </li> <li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2011/08/why-jetbrains-needs-kotlin/">"Why JetBrains needs Kotlin"</a>. <q>we expect Kotlin to drive the sales of IntelliJ IDEA</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Why+JetBrains+needs+Kotlin&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2011%2F08%2Fwhy-jetbrains-needs-kotlin%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2016/02/kotlin-1-0-released-pragmatic-language-for-jvm-and-android/">"Kotlin 1.0 Released: Pragmatic Language for JVM and Android &#124; Kotlin Blog"</a>. <i>Blog.jetbrains.com</i>. 2016-02-15<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2017-04-11</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Blog.jetbrains.com&amp;rft.atitle=Kotlin+1.0+Released%3A+Pragmatic+Language+for+JVM+and+Android+%26%23124%3B+Kotlin+Blog&amp;rft.date=2016-02-15&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2016%2F02%2Fkotlin-1-0-released-pragmatic-language-for-jvm-and-android%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2017/11/kotlin-1-2-released/">"Kotlin 1.2 Released: Sharing Code between Platforms &#124; Kotlin Blog"</a>. <i>Blog.jetbrains.com</i>. 2017-11-28.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Blog.jetbrains.com&amp;rft.atitle=Kotlin+1.2+Released%3A+Sharing+Code+between+Platforms+%26%23124%3B+Kotlin+Blog&amp;rft.date=2017-11-28&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2017%2F11%2Fkotlin-1-2-released%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-auto3-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-auto3_13-0">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="http://social.techcrunch.com/2019/05/07/kotlin-is-now-googles-preferred-language-for-android-app-development/">"Kotlin is now Google's preferred language for Android app development"</a>. <i>TechCrunch</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">8 May</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=TechCrunch&amp;rft.atitle=Kotlin+is+now+Google%27s+preferred+language+for+Android+app+development&amp;rft_id=http%3A%2F%2Fsocial.techcrunch.com%2F2019%2F05%2F07%2Fkotlin-is-now-googles-preferred-language-for-android-app-development%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-:03-14"><span class="mw-cite-backlink">^ <a href="#cite_ref-:03_14-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:03_14-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:03_14-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-:03_14-3"><sup><i><b>d</b></i></sup></a></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/releases.html">"Kotlin releases"</a>. <i>kotlinlang.org</i>. 10 Juni 2022<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">19 Juni</span> 2022</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=kotlinlang.org&amp;rft.atitle=Kotlin+releases&amp;rft.date=2022-06-10&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freleases.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/whatsnew14.html">"What's New in Kotlin 1.4 - Kotlin Programming Language"</a>. <i>Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2020-08-20</span></span>. <q>In 1.4.0, we slightly change the Swift API generated from Kotlin with respect to the way exceptions are translated.</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin&amp;rft.atitle=What%27s+New+in+Kotlin+1.4+-+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Fwhatsnew14.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><cite class="citation web">Krill, Paul (2023-01-12). <a rel="nofollow" class="external text" href="https://www.infoworld.com/article/3682130/kotlin-180-adds-recursive-copy-delete-for-directories.html">"Kotlin 1.8.0 adds recursive copy, delete for directories"</a>. <i>InfoWorld</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2023-05-08</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=InfoWorld&amp;rft.atitle=Kotlin+1.8.0+adds+recursive+copy%2C+delete+for+directories&amp;rft.date=2023-01-12&amp;rft.aulast=Krill&amp;rft.aufirst=Paul&amp;rft_id=https%3A%2F%2Fwww.infoworld.com%2Farticle%2F3682130%2Fkotlin-180-adds-recursive-copy-delete-for-directories.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-interview3-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-interview3_17-0">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://zeroturnaround.com/rebellabs/jvm-languages-report-extended-interview-with-kotlin-creator-andrey-breslav/">"JVM Languages Report extended interview with Kotlin creator Andrey Breslav"</a>. <i>Zeroturnaround.com</i>. 22 April 2013<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2 February</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Zeroturnaround.com&amp;rft.atitle=JVM+Languages+Report+extended+interview+with+Kotlin+creator+Andrey+Breslav&amp;rft.date=2013-04-22&amp;rft_id=https%3A%2F%2Fzeroturnaround.com%2Frebellabs%2Fjvm-languages-report-extended-interview-with-kotlin-creator-andrey-breslav%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://confluence.jetbrains.com/display/Kotlin/Grammar#Grammar-Semicolons">"Semicolons"</a>. <i>jetbrains.com</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">8 February</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=jetbrains.com&amp;rft.atitle=Semicolons&amp;rft_id=https%3A%2F%2Fconfluence.jetbrains.com%2Fdisplay%2FKotlin%2FGrammar%23Grammar-Semicolons&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://elizarov.medium.com/types-are-moving-to-the-right-22c0ef31dd4a#:~:text=Woot!%20That%E2%80%99s%20nice%20and%20aligns,%20pleasure%20for%20our%20eyes%20to%20see.">"Types are moving to the right"</a>. <i>Medium</i>. Medium. 16 July 2020<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">6 November</span> 2021</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Medium&amp;rft.atitle=Types+are+moving+to+the+right&amp;rft.date=2020-07-16&amp;rft_id=https%3A%2F%2Felizarov.medium.com%2Ftypes-are-moving-to-the-right-22c0ef31dd4a%23%3A~%3Atext%3DWoot%21%2520That%25E2%2580%2599s%2520nice%2520and%2520aligns%2C%2520pleasure%2520for%2520our%2520eyes%2520to%2520see.&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2020/11/roman-elizarov-is-the-new-project-lead-for-kotlin/">"Roman Elizarov is the new Project Lead for Kotlin"</a>. <i>The Kotlin Blog</i>. JetBrains<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">7 November</span> 2021</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=The+Kotlin+Blog&amp;rft.atitle=Roman+Elizarov+is+the+new+Project+Lead+for+Kotlin&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2020%2F11%2Froman-elizarov-is-the-new-project-lead-for-kotlin%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-Basic_Syntax3-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-Basic_Syntax3_21-0">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/basic-syntax.html#defining-variables">"Basic Syntax"</a>. <i>Kotlin</i>. Jetbrains<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">19 January</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin&amp;rft.atitle=Basic+Syntax&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Fbasic-syntax.html%23defining-variables&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://confluence.jetbrains.com/display/Kotlin/Functions">"functions"</a>. <i>jetbrains.com</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">8 February</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=jetbrains.com&amp;rft.atitle=functions&amp;rft_id=https%3A%2F%2Fconfluence.jetbrains.com%2Fdisplay%2FKotlin%2FFunctions&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/whatsnew13.html">"What's New in Kotlin 1.3 - Kotlin Programming Language"</a>. <i>Kotlin</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">4 April</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin&amp;rft.atitle=What%27s+New+in+Kotlin+1.3+-+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Fwhatsnew13.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://discuss.kotlinlang.org/t/design-by-contract-dbc-design-considerations/1321">"Design by Contract (DbC) design considerations"</a>. <i>Kotlin Discussions</i> (dalam bahasa Inggris). 16 August 2012<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">4 April</span> 2020</span>. <q>Implement the full semantics of Eiffel DbC and improve upon it.</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin+Discussions&amp;rft.atitle=Design+by+Contract+%28DbC%29+design+considerations&amp;rft.date=2012-08-16&amp;rft_id=https%3A%2F%2Fdiscuss.kotlinlang.org%2Ft%2Fdesign-by-contract-dbc-design-considerations%2F1321&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/js-overview.html#use-cases-for-kotlin-js">"Kotlin for JavaScript | Kotlin"</a>. <i>Kotlin Help</i> (dalam bahasa Inggris). 21 January 2021<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2021-03-19</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin+Help&amp;rft.atitle=Kotlin+for+JavaScript+%7C+Kotlin&amp;rft.date=2021-01-21&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Fjs-overview.html%23use-cases-for-kotlin-js&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20211118223052/https://play.kotlinlang.org/byExample/01_introduction/01_Hello%20world">"Kotlin Examples: Learn Kotlin Programming By Example"</a>. Diarsipkan dari <a rel="nofollow" class="external text" href="https://play.kotlinlang.org/byExample/01_introduction/01_Hello%20world">versi asli</a> tanggal 2021-11-18<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">2022-06-19</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Kotlin+Examples%3A+Learn+Kotlin+Programming+By+Example&amp;rft_id=https%3A%2F%2Fplay.kotlinlang.org%2FbyExample%2F01_introduction%2F01_Hello%2520world&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.callicoder.com/kotlin-data-classes/">"Introduction to Data Classes in Kotlin"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Introduction+to+Data+Classes+in+Kotlin&amp;rft_id=https%3A%2F%2Fwww.callicoder.com%2Fkotlin-data-classes%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/lambdas.html">"Higher-Order Functions and Lambdas"</a>. <i>Kotlin</i>. Jetbrains<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">19 January</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlin&amp;rft.atitle=Higher-Order+Functions+and+Lambdas&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Flambdas.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-29">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://plugins.jetbrains.com/plugin/6954-kotlin">"Kotlin&#160;:: JetBrains Plugin Repository"</a>. <i>Plugins.jetbrains.com</i>. 31 March 2017<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">11 April</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Plugins.jetbrains.com&amp;rft.atitle=Kotlin+%3A%3A+JetBrains+Plugin+Repository&amp;rft.date=2017-03-31&amp;rft_id=https%3A%2F%2Fplugins.jetbrains.com%2Fplugin%2F6954-kotlin&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-30">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.jetbrains.com/idea/whatsnew/">"What's New in IntelliJ IDEA 2017.1"</a>. <i>Jetbrains.com</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">11 April</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Jetbrains.com&amp;rft.atitle=What%27s+New+in+IntelliJ+IDEA+2017.1&amp;rft_id=https%3A%2F%2Fwww.jetbrains.com%2Fidea%2Fwhatsnew%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/tutorials/getting-started-eclipse.html">"Getting Started with Eclipse Neon – Kotlin Programming Language"</a>. <i>Kotlinlang.org</i>. 10 November 2016<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">11 April</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Kotlinlang.org&amp;rft.atitle=Getting+Started+with+Eclipse+Neon+%E2%80%93+Kotlin+Programming+Language&amp;rft.date=2016-11-10&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Ftutorials%2Fgetting-started-eclipse.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://github.com/JetBrains/kotlin-eclipse">"JetBrains/kotlin-eclipse: Kotlin Plugin for Eclipse"</a>. GitHub<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">11 April</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=JetBrains%2Fkotlin-eclipse%3A+Kotlin+Plugin+for+Eclipse&amp;rft.pub=GitHub&amp;rft_id=https%3A%2F%2Fgithub.com%2FJetBrains%2Fkotlin-eclipse&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/using-maven.html">"Using Maven – Kotlin Programming Language"</a>. <i>kotlinlang.org</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">9 May</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=kotlinlang.org&amp;rft.atitle=Using+Maven+%E2%80%93+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Fusing-maven.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/using-ant.html">"Using Ant – Kotlin Programming Language"</a>. <i>kotlinlang.org</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">9 May</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=kotlinlang.org&amp;rft.atitle=Using+Ant+%E2%80%93+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Fusing-ant.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://kotlinlang.org/docs/reference/using-gradle.html">"Using Gradle – Kotlin Programming Language"</a>. <i>kotlinlang.org</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">9 May</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=kotlinlang.org&amp;rft.atitle=Using+Gradle+%E2%80%93+Kotlin+Programming+Language&amp;rft_id=https%3A%2F%2Fkotlinlang.org%2Fdocs%2Freference%2Fusing-gradle.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://developer.android.com/kotlin">"Kotlin and Android"</a>. <i>Android Developers</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Android+Developers&amp;rft.atitle=Kotlin+and+Android&amp;rft_id=https%3A%2F%2Fdeveloper.android.com%2Fkotlin&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://github.com/udalov/kotlin-vim">"udalov/kotlin-vim: Kotlin plugin for Vim. Featuring: syntax highlighting, basic indentation, Syntastic support"</a>. GitHub<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">30 August</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=udalov%2Fkotlin-vim%3A+Kotlin+plugin+for+Vim.+Featuring%3A+syntax+highlighting%2C+basic+indentation%2C+Syntastic+support&amp;rft.pub=GitHub&amp;rft_id=https%3A%2F%2Fgithub.com%2Fudalov%2Fkotlin-vim&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text"><cite class="citation news">Lardinois, Frederic (17 May 2017). <a rel="nofollow" class="external text" href="https://techcrunch.com/2017/05/17/google-makes-kotlin-a-first-class-language-for-writing-android-apps/">"Google makes Kotlin a first-class language for writing Android apps"</a>. <i>techcrunch.com</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">28 June</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=techcrunch.com&amp;rft.atitle=Google+makes+Kotlin+a+first-class+language+for+writing+Android+apps&amp;rft.date=2017-05-17&amp;rft.aulast=Lardinois&amp;rft.aufirst=Frederic&amp;rft_id=https%3A%2F%2Ftechcrunch.com%2F2017%2F05%2F17%2Fgoogle-makes-kotlin-a-first-class-language-for-writing-android-apps%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-39">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.zdnet.com/article/google-were-using-kotlin-programming-language-to-squash-the-bugs-that-cause-most-crashes/">"Kotlin programming language: How Google is using it to squash the code bugs that cause most crashes"</a>. <i>ZDNet</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=ZDNet&amp;rft.atitle=Kotlin+programming+language%3A+How+Google+is+using+it+to+squash+the+code+bugs+that+cause+most+crashes&amp;rft_id=https%3A%2F%2Fwww.zdnet.com%2Farticle%2Fgoogle-were-using-kotlin-programming-language-to-squash-the-bugs-that-cause-most-crashes%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-40">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://spring.io/blog/2017/01/04/introducing-kotlin-support-in-spring-framework-5-0">"Introducing Kotlin support in Spring Framework 5.0"</a>. <i>Spring</i>. Pivotal. 4 January 2017<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Spring&amp;rft.atitle=Introducing+Kotlin+support+in+Spring+Framework+5.0&amp;rft.date=2017-01-04&amp;rft_id=https%3A%2F%2Fspring.io%2Fblog%2F2017%2F01%2F04%2Fintroducing-kotlin-support-in-spring-framework-5-0&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-41">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2020/08/the-state-of-kotlin-support-in-spring/">"The State of Kotlin Support in Spring"</a>. <i>JetBrains</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">6 December</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=JetBrains&amp;rft.atitle=The+State+of+Kotlin+Support+in+Spring&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2020%2F08%2Fthe-state-of-kotlin-support-in-spring%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-42">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://dzone.com/articles/not-only-spring-boot-a-review-of-alternatives">"Review of Microservices Frameworks: A Look at Spring Boot Alternatives"</a>. <i>DZone</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=DZone&amp;rft.atitle=Review+of+Microservices+Frameworks%3A+A+Look+at+Spring+Boot+Alternatives&amp;rft_id=https%3A%2F%2Fdzone.com%2Farticles%2Fnot-only-spring-boot-a-review-of-alternatives&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-43">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.jetbrains.com/lp/devecosystem-2020/kotlin/">"Kotlin Programming - The State of Developer Ecosystem 2020"</a>. <i>JetBrains</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=JetBrains&amp;rft.atitle=Kotlin+Programming+-+The+State+of+Developer+Ecosystem+2020&amp;rft_id=https%3A%2F%2Fwww.jetbrains.com%2Flp%2Fdevecosystem-2020%2Fkotlin%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-44">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20190322190823/https://octoverse.github.com/projects">"The state of the Octoverse"</a>. Diarsipkan dari <a rel="nofollow" class="external text" href="https://octoverse.github.com/projects">versi asli</a> tanggal 22 March 2019<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=The+state+of+the+Octoverse&amp;rft_id=https%3A%2F%2Foctoverse.github.com%2Fprojects&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span> <span style="display:none;font-size:100%" class="error citation-comment">Parameter <code style="color:inherit; border:inherit; padding:inherit;">&#124;url-status=</code> yang tidak diketahui akan diabaikan (<a href="/wiki/Bantuan:Galat_CS1#parameter_ignored" title="Bantuan:Galat CS1">bantuan</a>)</span></span> </li> <li id="cite_note-45"><span class="mw-cite-backlink"><b><a href="#cite_ref-45">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://insights.stackoverflow.com/survey/2020#most-loved-dreaded-and-wanted">"Stack Overflow Developer Survey 2020"</a><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">28 May</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Stack+Overflow+Developer+Survey+2020&amp;rft_id=https%3A%2F%2Finsights.stackoverflow.com%2Fsurvey%2F2020%23most-loved-dreaded-and-wanted&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-46">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2019/07/kotlin-wins-breakout-project-of-the-year-award-at-oscon-19/">"Kotlin wins Breakout Project of the Year award at OSCON '19"</a><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Kotlin+wins+Breakout+Project+of+the+Year+award+at+OSCON+%2719&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2019%2F07%2Fkotlin-wins-breakout-project-of-the-year-award-at-oscon-19%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-47"><span class="mw-cite-backlink"><b><a href="#cite_ref-47">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=AgPj1Q6D--c&amp;feature=youtu.be&amp;t=309">"State of Kotlin on Android"</a>. <i>YouTube</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=YouTube&amp;rft.atitle=State+of+Kotlin+on+Android&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAgPj1Q6D--c%26feature%3Dyoutu.be%26t%3D309&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-48">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=K8XxaAba65g&amp;list=PLQ176FUIyIUY6SKGl3Cj9yeYibBuRr3Hl&amp;index=22">"KotlinConf 2019: Kotlin Runs Taxes in Norway by Jarle Hansen &amp; Anders Mikkelsen"</a>. <i>YouTube</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=YouTube&amp;rft.atitle=KotlinConf+2019%3A+Kotlin+Runs+Taxes+in+Norway+by+Jarle+Hansen+%26+Anders+Mikkelsen&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DK8XxaAba65g%26list%3DPLQ176FUIyIUY6SKGl3Cj9yeYibBuRr3Hl%26index%3D22&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-49"><span class="mw-cite-backlink"><b><a href="#cite_ref-49">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://docs.gradle.org/current/userguide/kotlin_dsl.html">"Gradle Kotlin DSL Primer"</a>. <i>docs.gradle.org</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=docs.gradle.org&amp;rft.atitle=Gradle+Kotlin+DSL+Primer&amp;rft_id=https%3A%2F%2Fdocs.gradle.org%2Fcurrent%2Fuserguide%2Fkotlin_dsl.html&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-50">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/qldb/">"QLDB at Amazon"</a>. <i>Talking Kotlin</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=QLDB+at+Amazon&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fqldb%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-51"><span class="mw-cite-backlink"><b><a href="#cite_ref-51">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/going-full-kotlin-multiplatform/">"Going Full Kotlin Multiplatform"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Going+Full+Kotlin+Multiplatform&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fgoing-full-kotlin-multiplatform%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-52">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/kotless/">"Kotless"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Kotless&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fkotless%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-53"><span class="mw-cite-backlink"><b><a href="#cite_ref-53">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/Using-Kotlin-for-backend-development-at-Flux/">"Using Kotlin for backend development at Flux"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Using+Kotlin+for+backend+development+at+Flux&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2FUsing-Kotlin-for-backend-development-at-Flux%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-54"><span class="mw-cite-backlink"><b><a href="#cite_ref-54">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/kotlin-at-allegro/">"Kotlin at Allegro"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Kotlin+at+Allegro&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fkotlin-at-allegro%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-55"><span class="mw-cite-backlink"><b><a href="#cite_ref-55">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/greenfield-kotlin-at-olx/">"Greenfield Kotlin at OLX"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Greenfield+Kotlin+at+OLX&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fgreenfield-kotlin-at-olx%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-56">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/kotlin-at-shazam/">"Kotlin at Shazam"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Kotlin+at+Shazam&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fkotlin-at-shazam%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-57"><span class="mw-cite-backlink"><b><a href="#cite_ref-57">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/application-monitoring-with-micrometer/">"Application Monitoring with Micrometer"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Application+Monitoring+with+Micrometer&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fapplication-monitoring-with-micrometer%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-58"><span class="mw-cite-backlink"><b><a href="#cite_ref-58">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/groovy-and-kotlin-interop-at-rocket-travel/">"Groovy and Kotlin Interop at Rocket Travel"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Groovy+and+Kotlin+Interop+at+Rocket+Travel&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fgroovy-and-kotlin-interop-at-rocket-travel%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-59"><span class="mw-cite-backlink"><b><a href="#cite_ref-59">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/kotlin-on-the-backend-at-meshcloud/">"Kotlin on the backend at Meshcloud"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Kotlin+on+the+backend+at+Meshcloud&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Fkotlin-on-the-backend-at-meshcloud%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-60">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/Zally-An-API-Linter/">"Zally - An API Linter"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Zally+-+An+API+Linter&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2FZally-An-API-Linter%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-61"><span class="mw-cite-backlink"><b><a href="#cite_ref-61">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=JnmHqKLgYY4">"KotlinConf 2019: Kotlin in Space by Maxim Mazin"</a>. <i>YouTube</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=YouTube&amp;rft.atitle=KotlinConf+2019%3A+Kotlin+in+Space+by+Maxim+Mazin&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DJnmHqKLgYY4&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-62"><span class="mw-cite-backlink"><b><a href="#cite_ref-62">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=1Pu0TYJJ2Tw&amp;list=PLQ176FUIyIUY6UK1cgVsbdPYA3X5WLam5&amp;index=14">"KotlinConf 2017 - Frontend Kotlin from the Trenches by Gaetan Zoritchak"</a>. <i>YouTube</i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=YouTube&amp;rft.atitle=KotlinConf+2017+-+Frontend+Kotlin+from+the+Trenches+by+Gaetan+Zoritchak&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D1Pu0TYJJ2Tw%26list%3DPLQ176FUIyIUY6UK1cgVsbdPYA3X5WLam5%26index%3D14&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-63"><span class="mw-cite-backlink"><b><a href="#cite_ref-63">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://talkingkotlin.com/fritz2/">"Fritz2"</a>. <i>Talking Kotlin</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Talking+Kotlin&amp;rft.atitle=Fritz2&amp;rft_id=https%3A%2F%2Ftalkingkotlin.com%2Ffritz2%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-64"><span class="mw-cite-backlink"><b><a href="#cite_ref-64">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.wizbii.com/company/barclays/job/convertibles-trading-system-developer">"Java/Kotlin Developer - Barclays - Prague - Wizbii"</a>. <i>Wizbii.com</i> (dalam bahasa Inggris)<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">29 September</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Wizbii.com&amp;rft.atitle=Java%2FKotlin+Developer+-+Barclays+-+Prague+-+Wizbii&amp;rft_id=https%3A%2F%2Fwww.wizbii.com%2Fcompany%2Fbarclays%2Fjob%2Fconvertibles-trading-system-developer&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-65"><span class="mw-cite-backlink"><b><a href="#cite_ref-65">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20190701030659/https://blog.dripstat.com/kotlin-in-production-the-good-the-bad-and-the-ugly-2/">"Kotlin in Production – What works, Whats broken"</a>. <i>Blog.dripstat.com</i>. 24 September 2016. Diarsipkan dari <a rel="nofollow" class="external text" href="https://blog.dripstat.com/kotlin-in-production-the-good-the-bad-and-the-ugly-2/">versi asli</a> tanggal 2019-07-01<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">11 April</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Blog.dripstat.com&amp;rft.atitle=Kotlin+in+Production+%E2%80%93+What+works%2C+Whats+broken&amp;rft.date=2016-09-24&amp;rft_id=https%3A%2F%2Fblog.dripstat.com%2Fkotlin-in-production-the-good-the-bad-and-the-ugly-2%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-66"><span class="mw-cite-backlink"><b><a href="#cite_ref-66">^</a></b></span> <span class="reference-text"><cite class="citation news"><a rel="nofollow" class="external text" href="https://m.signalvnoise.com/how-we-made-basecamp-3s-android-app-100-kotlin-35e4e1c0ef12">"How we made Basecamp 3's Android app 100% Kotlin – Signal v. Noise"</a>. <i>Signal v. Noise</i>. 29 April 2017<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">1 May</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=Signal+v.+Noise&amp;rft.atitle=How+we+made+Basecamp+3%27s+Android+app+100%25+Kotlin+%E2%80%93+Signal+v.+Noise&amp;rft.date=2017-04-29&amp;rft_id=https%3A%2F%2Fm.signalvnoise.com%2Fhow-we-made-basecamp-3s-android-app-100-kotlin-35e4e1c0ef12&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span><sup class="noprint Inline-Template"><span style="white-space: nowrap;">&#91;<i><a href="/wiki/Wikipedia:Pranala_mati" title="Wikipedia:Pranala mati"><span title="&#160;pranala nonaktif sejak Desember 2022">pranala nonaktif permanen</span></a></i>&#93;</span></sup></span> </li> <li id="cite_note-67"><span class="mw-cite-backlink"><b><a href="#cite_ref-67">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=mDpnc45WwlI">"Droidcon NYC 2016 - Kotlin in Production"</a>. <i><a href="/wiki/YouTube" title="YouTube">YouTube</a></i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=YouTube&amp;rft.atitle=Droidcon+NYC+2016+-+Kotlin+in+Production&amp;rft_id=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DmDpnc45WwlI&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-68"><span class="mw-cite-backlink"><b><a href="#cite_ref-68">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://medium.com/coursera-engineering/becoming-bilingual-coursera-d8048dce73e3">"Becoming bilingual@coursera"</a>. 26 April 2018<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Becoming+bilingual%40coursera&amp;rft.date=2018-04-26&amp;rft_id=https%3A%2F%2Fmedium.com%2Fcoursera-engineering%2Fbecoming-bilingual-coursera-d8048dce73e3&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-69"><span class="mw-cite-backlink"><b><a href="#cite_ref-69">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://twitter.com/robspieldenner/status/708355228832178176">"Rob Spieldenner on twitter"</a><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Rob+Spieldenner+on+twitter&amp;rft_id=https%3A%2F%2Ftwitter.com%2Frobspieldenner%2Fstatus%2F708355228832178176&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-70"><span class="mw-cite-backlink"><b><a href="#cite_ref-70">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://www.reddit.com/r/androiddev/comments/5sihp0/2017_whos_using_kotlin/ddfmkf7/">"2017 Who's using Kotlin?"</a>. 7 February 2017<span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=2017+Who%27s+using+Kotlin%3F&amp;rft.date=2017-02-07&amp;rft_id=https%3A%2F%2Fwww.reddit.com%2Fr%2Fandroiddev%2Fcomments%2F5sihp0%2F2017_whos_using_kotlin%2Fddfmkf7%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-71"><span class="mw-cite-backlink"><b><a href="#cite_ref-71">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://github.com/square/sqldelight">"square/sqldelight"</a>. <i><a href="/wiki/GitHub" title="GitHub">GitHub</a></i><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=GitHub&amp;rft.atitle=square%2Fsqldelight&amp;rft_id=https%3A%2F%2Fgithub.com%2Fsquare%2Fsqldelight&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-72"><span class="mw-cite-backlink"><b><a href="#cite_ref-72">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://twitter.com/danlew42/status/809065097339564032">"Dan Lew on Twitter"</a><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">24 July</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Dan+Lew+on+Twitter&amp;rft_id=https%3A%2F%2Ftwitter.com%2Fdanlew42%2Fstatus%2F809065097339564032&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-73"><span class="mw-cite-backlink"><b><a href="#cite_ref-73">^</a></b></span> <span class="reference-text"><cite class="citation web"><a rel="nofollow" class="external text" href="https://twitter.com/duolingo/status/1247876630984474626">"Duolingo on Twitter"</a><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">13 April</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Duolingo+on+Twitter&amp;rft_id=https%3A%2F%2Ftwitter.com%2Fduolingo%2Fstatus%2F1247876630984474626&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> <li id="cite_note-74"><span class="mw-cite-backlink"><b><a href="#cite_ref-74">^</a></b></span> <span class="reference-text"><cite class="citation news"><a rel="nofollow" class="external text" href="https://blog.jetbrains.com/kotlin/2017/03/kotlin-1-1/">"Kotlin 1.1 Released with JavaScript Support, Coroutines and more"</a><span class="reference-accessdate">. Diakses tanggal <span class="nowrap">1 May</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.atitle=Kotlin+1.1+Released+with+JavaScript+Support%2C+Coroutines+and+more&amp;rft_id=https%3A%2F%2Fblog.jetbrains.com%2Fkotlin%2F2017%2F03%2Fkotlin-1-1%2F&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span></span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="Bahan_bacaan">Bahan bacaan</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;veaction=edit&amp;section=26" title="Sunting bagian: Bahan bacaan" class="mw-editsection-visualeditor"><span>sunting</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;action=edit&amp;section=26" title="Sunting kode sumber bagian: Bahan bacaan"><span>sunting sumber</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><cite class="citation book">Hardiansah; Suryono, Sigit (2021). <a rel="nofollow" class="external text" href="https://www.google.co.id/books/edition/Panduan_Praktis_Membuat_Aplikasi_ANDROID/Wh_xDwAAQBAJ?hl=id&amp;gbpv=1&amp;dq=pemrograman+android+kotlin&amp;printsec=frontcover"><i>Panduan Praktis Membuat Aplikasi ANDROID Dengan Android Studio (Kotlin)</i></a> (edisi ke-4). <a href="/wiki/Daerah_Istimewa_Yogyakarta" title="Daerah Istimewa Yogyakarta">Daerah Istimewa Yogyakarta</a>: <a href="/wiki/Sleman" class="mw-redirect" title="Sleman">Sleman</a>: PT. Lauwba Techno Indonesia.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Panduan+Praktis+Membuat+Aplikasi+ANDROID+Dengan+Android+Studio+%28Kotlin%29&amp;rft.place=Daerah+Istimewa+Yogyakarta%3A+Sleman&amp;rft.edition=4&amp;rft.pub=PT.+Lauwba+Techno+Indonesia&amp;rft.date=2021&amp;rft.au=Hardiansah&amp;rft.au=Suryono%2C+Sigit&amp;rft_id=https%3A%2F%2Fwww.google.co.id%2Fbooks%2Fedition%2FPanduan_Praktis_Membuat_Aplikasi_ANDROID%2FWh_xDwAAQBAJ%3Fhl%3Did%26gbpv%3D1%26dq%3Dpemrograman%2Bandroid%2Bkotlin%26printsec%3Dfrontcover&amp;rfr_id=info%3Asid%2Fid.wikipedia.org%3AKotlin+%28bahasa+pemrograman%29" class="Z3988"><span style="display:none;">&#160;</span></span> <span style="display:none;font-size:100%" class="error citation-comment">Parameter <code style="color:inherit; border:inherit; padding:inherit;">&#124;url-status=</code> yang tidak diketahui akan diabaikan (<a href="/wiki/Bantuan:Galat_CS1#parameter_ignored" title="Bantuan:Galat CS1">bantuan</a>)</span></li></ul> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r23782733"><style data-mw-deduplicate="TemplateStyles:r25847331">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}</style></div><div role="navigation" class="navbox authority-control" aria-labelledby="Pengawasan_otoritas_frameless_&amp;#124;text-top_&amp;#124;10px_&amp;#124;alt=Sunting_ini_di_Wikidata_&amp;#124;link=https&amp;#58;//www.wikidata.org/wiki/Q3816639#identifiers&amp;#124;Sunting_ini_di_Wikidata" style="padding:3px"><table class="nowraplinks hlist navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th id="Pengawasan_otoritas_frameless_&amp;#124;text-top_&amp;#124;10px_&amp;#124;alt=Sunting_ini_di_Wikidata_&amp;#124;link=https&amp;#58;//www.wikidata.org/wiki/Q3816639#identifiers&amp;#124;Sunting_ini_di_Wikidata" scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Bantuan:Pengawasan_otoritas" title="Bantuan:Pengawasan otoritas">Pengawasan otoritas</a> <span class="mw-valign-text-top" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q3816639#identifiers" title="Sunting ini di Wikidata"><img alt="Sunting ini di Wikidata" src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><span class="uid"><a rel="nofollow" class="external text" href="https://academic.microsoft.com/v2/detail/2778507699">Microsoft Academic</a></span></li></ul> </div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐api‐ext.codfw.main‐7c4bdb7978‐6wsrb Cached time: 20250213010928 Cache expiry: 2592000 Reduced expiry: false Complications: [show‐toc] CPU time usage: 0.815 seconds Real time usage: 1.367 seconds Preprocessor visited node count: 3921/1000000 Post‐expand include size: 141683/2097152 bytes Template argument size: 4982/2097152 bytes Highest expansion depth: 27/100 Expensive parser function count: 27/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 141070/5000000 bytes Lua time usage: 0.463/10.000 seconds Lua memory usage: 6251888/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 1230.329 1 -total 32.01% 393.815 3 Templat:Infobox 29.59% 363.993 1 Templat:Infobox_programming_language 23.48% 288.885 1 Templat:Reflist 16.16% 198.866 68 Templat:Cite_web 10.49% 129.069 1 Templat:Infobox_software/simple 7.12% 87.579 1 Templat:Wikidata 5.60% 68.939 1 Templat:Authority_control 3.24% 39.875 1 Templat:Hlist 2.33% 28.710 2 Templat:Start_date_and_age --> <!-- Saved in parser cache with key idwiki:pcache:2440670:|#|:idhash:canonical and timestamp 20250213010926 and revision id 26917126. Rendering was triggered because: page-edit --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&amp;type=1x1&amp;usesul3=0" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Diperoleh dari "<a dir="ltr" href="https://id.wikipedia.org/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;oldid=26917126">https://id.wikipedia.org/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;oldid=26917126</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Istimewa:Daftar_kategori" title="Istimewa:Daftar kategori">Kategori</a>: <ul><li><a href="/wiki/Kategori:Bahasa_pemrograman_Java" title="Kategori:Bahasa pemrograman Java">Bahasa pemrograman Java</a></li><li><a href="/wiki/Kategori:Bahasa_pemrograman_berorientasi_objek" title="Kategori:Bahasa pemrograman berorientasi objek">Bahasa pemrograman berorientasi objek</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Kategori tersembunyi: <ul><li><a href="/wiki/Kategori:Halaman_dengan_argumen_ganda_di_pemanggilan_templat" title="Kategori:Halaman dengan argumen ganda di pemanggilan templat">Halaman dengan argumen ganda di pemanggilan templat</a></li><li><a href="/wiki/Kategori:Halaman_dengan_rujukan_yang_menggunakan_parameter_yang_tidak_didukung" title="Kategori:Halaman dengan rujukan yang menggunakan parameter yang tidak didukung">Halaman dengan rujukan yang menggunakan parameter yang tidak didukung</a></li><li><a href="/wiki/Kategori:CS1_sumber_berbahasa_Inggris_(en)" title="Kategori:CS1 sumber berbahasa Inggris (en)">CS1 sumber berbahasa Inggris (en)</a></li><li><a href="/wiki/Kategori:Artikel_dengan_pranala_luar_nonaktif" title="Kategori:Artikel dengan pranala luar nonaktif">Artikel dengan pranala luar nonaktif</a></li><li><a href="/wiki/Kategori:Artikel_dengan_pranala_luar_nonaktif_permanen" title="Kategori:Artikel dengan pranala luar nonaktif permanen">Artikel dengan pranala luar nonaktif permanen</a></li><li><a href="/wiki/Kategori:Artikel_Wikipedia_dengan_penanda_MA" title="Kategori:Artikel Wikipedia dengan penanda MA">Artikel Wikipedia dengan penanda MA</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> Halaman ini terakhir diubah pada 13 Februari 2025, pukul 01.09.</li> <li id="footer-info-copyright">Teks tersedia di bawah <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Lisensi Atribusi-BerbagiSerupa Creative Commons</a>; ketentuan tambahan mungkin berlaku. Lihat <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use">Ketentuan Penggunaan</a> untuk rincian lebih lanjut.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Kebijakan privasi</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:Tentang">Tentang Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:Penyangkalan_umum">Penyangkalan</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Kode Etik</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Pengembang</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/id.wikipedia.org">Statistik</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Pernyataan kuki</a></li> <li id="footer-places-mobileview"><a href="//id.m.wikipedia.org/w/index.php?title=Kotlin_(bahasa_pemrograman)&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Tampilan seluler</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" lang="en" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-header-container vector-sticky-header-container"> <div id="vector-sticky-header" class="vector-sticky-header"> <div class="vector-sticky-header-start"> <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true"> <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" tabindex="-1" data-event-name="ui.vector-sticky-search-form.icon"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Pencarian</span> </button> </div> <div role="search" class="vector-search-box-vue vector-search-box-show-thumbnail vector-search-box"> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail"> <form action="/w/index.php" id="vector-sticky-search-form" class="cdx-search-input cdx-search-input--has-end-button"> <div class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Telusuri Wikipedia"> <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Istimewa:Pencarian"> </div> <button class="cdx-button cdx-search-input__end-button">Cari</button> </form> </div> </div> </div> <div class="vector-sticky-header-context-bar"> <nav aria-label="Daftar isi" class="vector-toc-landmark"> <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc vector-button-flush-left" > <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox " aria-label="Gulingkan daftar isi" > <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Gulingkan daftar isi</span> </label> <div class="vector-dropdown-content"> <div id="vector-sticky-header-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div class="vector-sticky-header-context-bar-primary" aria-hidden="true" ><span class="mw-page-title-main">Kotlin (bahasa pemrograman)</span></div> </div> </div> <div class="vector-sticky-header-end" aria-hidden="true"> <div class="vector-sticky-header-icons"> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-talk-sticky-header" tabindex="-1" data-event-name="talk-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-subject-sticky-header" tabindex="-1" data-event-name="subject-sticky-header"><span class="vector-icon mw-ui-icon-article mw-ui-icon-wikimedia-article"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-history-sticky-header" tabindex="-1" data-event-name="history-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-history mw-ui-icon-wikimedia-wikimedia-history"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only mw-watchlink" id="ca-watchstar-sticky-header" tabindex="-1" data-event-name="watch-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-star mw-ui-icon-wikimedia-wikimedia-star"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-ve-edit-sticky-header" tabindex="-1" data-event-name="ve-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-edit mw-ui-icon-wikimedia-wikimedia-edit"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-edit-sticky-header" tabindex="-1" data-event-name="wikitext-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-wikiText mw-ui-icon-wikimedia-wikimedia-wikiText"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-viewsource-sticky-header" tabindex="-1" data-event-name="ve-edit-protected-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-editLock mw-ui-icon-wikimedia-wikimedia-editLock"></span> <span></span> </a> </div> <div class="vector-sticky-header-buttons"> <button class="cdx-button cdx-button--weight-quiet mw-interlanguage-selector" id="p-lang-btn-sticky-header" tabindex="-1" data-event-name="ui.dropdown-p-lang-btn-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-language mw-ui-icon-wikimedia-wikimedia-language"></span> <span>47 bahasa</span> </button> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive" id="ca-addsection-sticky-header" tabindex="-1" data-event-name="addsection-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbleAdd-progressive mw-ui-icon-wikimedia-speechBubbleAdd-progressive"></span> <span>Bagian baru</span> </a> </div> <div class="vector-sticky-header-icon-end"> <div class="vector-user-links"> </div> </div> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-56d8db5f6f-bpg6w","wgBackendResponseTime":138,"wgPageParseReport":{"limitreport":{"cputime":"0.815","walltime":"1.367","ppvisitednodes":{"value":3921,"limit":1000000},"postexpandincludesize":{"value":141683,"limit":2097152},"templateargumentsize":{"value":4982,"limit":2097152},"expansiondepth":{"value":27,"limit":100},"expensivefunctioncount":{"value":27,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":141070,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 1230.329 1 -total"," 32.01% 393.815 3 Templat:Infobox"," 29.59% 363.993 1 Templat:Infobox_programming_language"," 23.48% 288.885 1 Templat:Reflist"," 16.16% 198.866 68 Templat:Cite_web"," 10.49% 129.069 1 Templat:Infobox_software/simple"," 7.12% 87.579 1 Templat:Wikidata"," 5.60% 68.939 1 Templat:Authority_control"," 3.24% 39.875 1 Templat:Hlist"," 2.33% 28.710 2 Templat:Start_date_and_age"]},"scribunto":{"limitreport-timeusage":{"value":"0.463","limit":"10.000"},"limitreport-memusage":{"value":6251888,"limit":52428800}},"cachereport":{"origin":"mw-api-ext.codfw.main-7c4bdb7978-6wsrb","timestamp":"20250213010928","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Kotlin (bahasa pemrograman)","url":"https:\/\/id.wikipedia.org\/wiki\/Kotlin_(bahasa_pemrograman)","sameAs":"http:\/\/www.wikidata.org\/entity\/Q3816639","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q3816639","author":{"@type":"Organization","name":"Kontributor dari proyek Wikimedia."},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2017-08-26T08:33:28Z","dateModified":"2025-02-13T01:09:26Z","headline":"Bahasa pemrograman yang dapat berjalan di JVM"}</script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10