{"id":26704,"date":"2022-12-19T13:03:49","date_gmt":"2022-12-19T07:33:49","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/"},"modified":"2022-12-19T13:03:49","modified_gmt":"2022-12-19T07:33:49","slug":"solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/","title":{"rendered":"[Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-18548964\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"18548964\" data-parentid=\"18548947\" data-score=\"7\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p><code>printf()<\/code> takes a String and a vararg array of Objects as argument. Your program passes arguments that conform to these argument types, so the compiler is happy.<\/p>\n<p>The compiler would reject your method call if you did, for example<\/p>\n<pre><code>Integer a = 23;\nSystem.out.printf(a, x);\n<\/code><\/pre>\n<p>because an Integer is not a String.<\/p>\n<p>It seems like you think static typing makes runtime errors impossible. That&#8217;s not the case at all. The compiler doesn&#8217;t know what printf() does and what those <code>%s<\/code> mean in the String. It doesn&#8217;t know that the number of <code>%s<\/code> is supposed to match the number of arguments passed to the method. And even if it did, you could pass a variable of type String, and a variable of type Object[] to the method, whose length and values are only known at runtime, and not at compile time. For example:<\/p>\n<pre><code>String s = readPatternFromUser();\nObject o = readFirstArgFromUser();\nSystem.out.print(s, o);\n<\/code><\/pre>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">3<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] printf() takes a String and a vararg array of Objects as argument. Your program passes arguments that conform to these argument types, so the compiler is happy. The compiler would reject your method call if you did, for example Integer a = 23; System.out.printf(a, x); because an Integer is not a String. It seems &#8230; <a title=\"[Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/\" aria-label=\"More on [Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[323],"class_list":["post-26704","post","type-post","status-publish","format-standard","hentry","category-solved","tag-java"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>[Solved] Where&#039;s the benefit of static typing, aka why wasn&#039;t this caught? Java - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] Where&#039;s the benefit of static typing, aka why wasn&#039;t this caught? Java - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] printf() takes a String and a vararg array of Objects as argument. Your program passes arguments that conform to these argument types, so the compiler is happy. The compiler would reject your method call if you did, for example Integer a = 23; System.out.printf(a, x); because an Integer is not a String. It seems ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-12-19T07:33:49+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#\\\/schema\\\/person\\\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java\",\"datePublished\":\"2022-12-19T07:33:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/\"},\"wordCount\":168,\"publisher\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#organization\"},\"keywords\":[\"java\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/\",\"url\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/\",\"name\":\"[Solved] Where's the benefit of static typing, aka why wasn't this caught? Java - JassWeb\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#website\"},\"datePublished\":\"2022-12-19T07:33:49+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#website\",\"url\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/jassweb.com\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/jass-website-logo-1.png\",\"contentUrl\":\"https:\\\/\\\/jassweb.com\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/#\\\/schema\\\/person\\\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/wp-content\\\/litespeed\\\/avatar\\\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1778218008\",\"url\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/wp-content\\\/litespeed\\\/avatar\\\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1778218008\",\"contentUrl\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/wp-content\\\/litespeed\\\/avatar\\\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1778218008\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\\\/\\\/jassweb.com\"],\"url\":\"https:\\\/\\\/jassweb.com\\\/solved\\\/author\\\/jaspritsinghghumangmail-com\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] Where's the benefit of static typing, aka why wasn't this caught? Java - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] Where's the benefit of static typing, aka why wasn't this caught? Java - JassWeb","og_description":"[ad_1] printf() takes a String and a vararg array of Objects as argument. Your program passes arguments that conform to these argument types, so the compiler is happy. The compiler would reject your method call if you did, for example Integer a = 23; System.out.printf(a, x); because an Integer is not a String. It seems ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/","og_site_name":"JassWeb","article_published_time":"2022-12-19T07:33:49+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java","datePublished":"2022-12-19T07:33:49+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/"},"wordCount":168,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["java"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/","url":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/","name":"[Solved] Where's the benefit of static typing, aka why wasn't this caught? Java - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-12-19T07:33:49+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-wheres-the-benefit-of-static-typing-aka-why-wasnt-this-caught-java\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] Where&#8217;s the benefit of static typing, aka why wasn&#8217;t this caught? Java"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1778218008","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1778218008","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1778218008","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/26704","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=26704"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/26704\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=26704"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=26704"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=26704"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}