

{"id":18090,"date":"2018-06-09T04:20:02","date_gmt":"2018-06-09T04:20:02","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=18090"},"modified":"2021-12-04T10:15:25","modified_gmt":"2021-12-04T04:45:25","slug":"scala-constructor","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/scala-constructor\/","title":{"rendered":"Scala Constructor &#8211; 2 Popular Types of Constructors in Scala"},"content":{"rendered":"<p>In our previous tutorial, we studied <strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-trait-mixins\/\">Scala trait Mixins<\/a>\u00a0<\/strong>and now we are going to discuss\u00a0Scala constructor and types of constructor in <a href=\"https:\/\/data-flair.training\/blogs\/scala-tutorial\/\"><strong>Scala Programming Language<\/strong><\/a>: Primary Constructor and\u00a0Auxiliary Constructors in Scala. At last, we will cover Constructor Overloading in Scala.<\/p>\n<p>So, let&#8217;s begin Scala Constructor Tutorial.<\/p>\n<div id=\"attachment_18349\" style=\"width: 1210px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-18349\" class=\"wp-image-18349 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1.jpg\" alt=\"Scala Constructor - 2 Popular Types of Constructors in Scala\" width=\"1200\" height=\"628\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1.jpg 1200w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1-150x79.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1-300x157.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1-768x402.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01-1-1024x536.jpg 1024w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><p id=\"caption-attachment-18349\" class=\"wp-caption-text\">Scala Constructor &#8211; 2 Popular Types of Constructors in Scala<\/p><\/div>\n<h3>Scala Constructor<\/h3>\n<p>Scala constructor is used for creating an instance of a class. There are two types of constructor\u00a0in Scala &#8211; Primary and Auxiliary. Not a special method, a constructor is different in Scala than in <a href=\"https:\/\/data-flair.training\/blogs\/constructor-in-java\/\"><strong>Java constructors<\/strong><\/a>. The class\u2019 body is the primary constructor and the parameter list follows the class name. The following, then, is the default primary constructor.<br \/>\n<strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-currying\/\">Let&#8217;s see Scala Currying Function \u2013 Example &amp; Partially Applied Function<\/a><\/strong><\/p>\n<h3 class=\"western\">Default Primary Constructor in Scala<\/h3>\n<pre class=\"EnlighterJSRAW\">scala&gt;class Vehicle{\r\n| println(\"I am in the default constructor\")\r\n| }\r\ndefined class Vehicle\r\nscala&gt; val v=new Vehicle()<\/pre>\n<p>I am in the default constructor<br \/>\n<strong>v: Vehicle = Vehicle@78288f83<\/strong><br \/>\nHere, the class body has one print statement. This is the code in the default constructor. We could also have defined it without parentheses:<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; val v=new Vehicle<\/pre>\n<p>I am in the default constructor<br \/>\n<strong>v: Vehicle = Vehicle@7c751692<\/strong><\/p>\n<h3 class=\"western\">A Primary Constructor in Scala<\/h3>\n<p>A class in Scala may have only one primary constructor. Such a constructor may have zero or more parameters.<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; class Vehicle(model:String){\r\n| println(\"I am a \"+model+\".\")\r\n| }\r\ndefined class Vehicle\r\nscala&gt; val v=new Vehicle(\"Brio\")<\/pre>\n<p>I am a Brio.<br \/>\n<strong>v: Vehicle = Vehicle@42cfd794<\/strong><br \/>\n<strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-method-overloading\/\">Read about Scala Method Overloading with Example<\/a><\/strong><br \/>\nHere, a model is a val; we cannot reassign it. Take a look:<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; class Vehicle(model:String){\r\n| println(\"I am a \"+model+\".\")\r\n| model=\"Verna\"\r\n| println(\"I am now a \"+model+\".\")\r\n| }\r\n&lt;console&gt;:13: error: reassignment to val\r\nmodel=\"Verna\"\r\n^<\/pre>\n<p>But we can declare it to be a var:<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; class Vehicle(var model:String){\r\n| println(\"I am a \"+model+\".\")\r\n| model=\"Verna\"\r\n| println(\"I am now a \"+model+\".\")\r\n| }\r\ndefined class Vehicle\r\nscala&gt; val v=new Vehicle(\"Brio\")<\/pre>\n<p>I am a Brio.<br \/>\nI am now a Verna.<br \/>\n<strong>v: Vehicle = Vehicle@11174bf<\/strong><br \/>\nIn this case, the compiler generates setter and getter methods for the var.<br \/>\nTake another example:<\/p>\n<pre class=\"EnlighterJSRAW\">object Main extends App{\r\nclass Vehicle(model:String,color:String){\r\nprintln(\"I am a \"+color+\" \"+model+\".\")\r\n}\r\nvar v=new Vehicle(\"Verna\",\"red\")\r\n}<\/pre>\n<p>In the command prompt, using the Java Class File Disassembler:<br \/>\n<strong>C:\\Users\\lifei\\Desktop&gt;javap Main.class<\/strong><br \/>\n<strong>Compiled from &#8220;prim.scala&#8221;<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">public final class Main {\r\npublic static void main(java.lang.String[]);\r\npublic static void delayedInit(scala.Function0&lt;scala.runtime.BoxedUnit&gt;);\r\npublic static void delayedEndpoint$Main$1();\r\npublic static long executionStart();\r\npublic static void v_$eq(Main$Vehicle);\r\npublic static Main$Vehicle v();\r\n}<\/pre>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-singleton-object\/\">Let&#8217;s discuss Scala Object \u2013 Scala Singleton &amp; Scala Companion Object<\/a><\/strong><\/p>\n<h3 class=\"western\">Auxiliary Constructors in Scala<\/h3>\n<p>A class may have any number of auxiliary constructors. You must make sure that it must make a call to another auxiliary constructor or to the primary constructor in the first line of its body. Hence, each auxiliary constructor directly or indirectly invokes the primary constructor.<br \/>\nLet\u2019s take an example.<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; class Vehicle(model:String,color:String){\r\n| var year:Int=2000\r\n| def show(){\r\n| println(\"I am a \"+color+\" \"+model+\" from \"+year)\r\n| }\r\n| def this(model:String,color:String,year:Int){\r\n| this(model,color) \/\/Call to the primary constructor\r\n| this.year=year\r\n| }\r\n| }\r\ndefined class Vehicle\r\nscala&gt; var v=new Vehicle(\"Verna\",\"red\",2015)<\/pre>\n<p><strong>v: Vehicle = Vehicle@18dd7767<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; v.show()<\/pre>\n<p>I am a red Verna from 2015<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; var v1=new Vehicle(\"Verna\",\"black\")<\/pre>\n<p>v1: Vehicle = Vehicle@b2d8dcd<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; v1.show()<\/pre>\n<p>I am a black Verna from 2000<br \/>\n<strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-file-io\/\">Do you know about Scala File i\/o: Open, Read and Write a File in Scala<\/a><\/strong><\/p>\n<h3 class=\"western\">Scala Constructor Overloading<\/h3>\n<p>Finally, let us take a look at how to overload constructors.<\/p>\n<pre class=\"EnlighterJSRAW\">scala&gt; class Vehicle(model:String){\r\n| def this(model:String,color:String)={\r\n| this(model)\r\n| println(\"I am a \"+color+\" \"+model)\r\n| }\r\n| println(model)\r\n| }\r\ndefined class Vehicle\r\nscala&gt; new Vehicle(\"Prius\")<\/pre>\n<p>Prius<\/p>\n<pre class=\"EnlighterJSRAW\">res2: Vehicle = Vehicle@421d7900\r\nscala&gt; new Vehicle(\"Prius\",\"silver\")<\/pre>\n<p>Prius<br \/>\nI am a silver Prius<br \/>\nres3: Vehicle = Vehicle@42ea14b8<br \/>\nThis lets us make a call to the constructor that suits the number of arguments we provide.<br \/>\n<strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-string-method\/\">Have a Look at Scala String Method with Syntax and Method<\/a><\/strong><br \/>\nSo, this was all about Scala Constructor. Hope you like our explanation of types of Constructor in Scala.<\/p>\n<h3>Conclusion<\/h3>\n<p>Hence, in this Scala constructor tutorial, we studied types of constructor:\u00a0Primary Constructor and\u00a0Auxiliary Constructors in Scala. In Addition, we will cover constructor overloading in Scala Programming Language.<br \/>\nRelated Article-\u00a0<strong><a href=\"https:\/\/data-flair.training\/blogs\/scala-data-types\/\">Scala Data Types with Examples\u00a0<\/a><\/strong><br \/>\n<strong><a href=\"https:\/\/www.scala-lang.org\/\">For reference\u00a0<\/a><\/strong><span hidden class=\"__iawmlf-post-loop-links\" data-iawmlf-links=\"[{&quot;id&quot;:1904,&quot;href&quot;:&quot;https:\\\/\\\/www.scala-lang.org&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20251206135355\\\/https:\\\/\\\/www.scala-lang.org\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-10 07:41:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-15 07:30:15&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-18 15:55:26&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-23 02:56:25&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-27 16:24:45&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-02 02:40:17&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-05 13:44:47&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-09 08:06:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-12 14:24:57&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-17 17:26:33&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-20 17:57:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-24 15:52:31&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-30 14:21:46&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-02 14:58:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-05 16:39:16&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-12 17:17:04&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-16 04:52:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-19 13:39:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-24 17:10:42&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-28 04:44:36&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-03 07:25:17&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-08 21:46:06&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-12 18:02:22&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-27 20:15:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-05 11:05:11&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-10 19:22:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-14 07:59:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-17 16:14:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-21 23:18:28&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-26 09:13:01&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-29 14:23:58&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-07 12:16:25&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-13 10:20:22&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-18 15:54:26&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-22 05:55:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-25 08:30:39&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-29 13:12:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-02 14:06:47&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-09 18:23:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-15 16:29:46&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-19 06:54:54&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-22 13:14:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-26 04:09:02&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-29 09:04:33&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-03 02:40:11&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-06 20:59:35&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-07-06 20:59:35&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In our previous tutorial, we studied Scala trait Mixins\u00a0and now we are going to discuss\u00a0Scala constructor and types of constructor in Scala Programming Language: Primary Constructor and\u00a0Auxiliary Constructors in Scala. At last, we will&#46;&#46;&#46;<\/p>\n","protected":false},"author":6,"featured_media":18118,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[61],"tags":[1275,2930,2938,9959,12421,12422,12423,15108],"class_list":["post-18090","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-scala","tag-auxiliary-constructors-in-scala","tag-constructor-in-scala","tag-constructors-in-scala","tag-primary-constructor-in-scala","tag-scala-constructor","tag-scala-constructor-overloading","tag-scala-constructors","tag-types-of-scala-constructor"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Scala Constructor - 2 Popular Types of Constructors in Scala - DataFlair<\/title>\n<meta name=\"description\" content=\"What is Scala Constructor - Types of Constructor in Scala, Default Primary Constructor in Scala, Primary Constructors &amp; Auxiliary Constructors in Scala\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/scala-constructor\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Scala Constructor - 2 Popular Types of Constructors in Scala - DataFlair\" \/>\n<meta property=\"og:description\" content=\"What is Scala Constructor - Types of Constructor in Scala, Default Primary Constructor in Scala, Primary Constructors &amp; Auxiliary Constructors in Scala\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/scala-constructor\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-09T04:20:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-04T04:45:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Scala Constructor - 2 Popular Types of Constructors in Scala - DataFlair","description":"What is Scala Constructor - Types of Constructor in Scala, Default Primary Constructor in Scala, Primary Constructors & Auxiliary Constructors in Scala","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:\/\/data-flair.training\/blogs\/scala-constructor\/","og_locale":"en_US","og_type":"article","og_title":"Scala Constructor - 2 Popular Types of Constructors in Scala - DataFlair","og_description":"What is Scala Constructor - Types of Constructor in Scala, Default Primary Constructor in Scala, Primary Constructors & Auxiliary Constructors in Scala","og_url":"https:\/\/data-flair.training\/blogs\/scala-constructor\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-06-09T04:20:02+00:00","article_modified_time":"2021-12-04T04:45:25+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/2c58ecb4f73a39f0ef993f1ddfcd7b89"},"headline":"Scala Constructor &#8211; 2 Popular Types of Constructors in Scala","datePublished":"2018-06-09T04:20:02+00:00","dateModified":"2021-12-04T04:45:25+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/"},"wordCount":523,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01.jpg","keywords":["Auxiliary Constructors in Scala","Constructor in Scala","Constructors in Scala","Primary Constructor in Scala","Scala Constructor","Scala Constructor Overloading","Scala Constructors","Types of Scala Constructor"],"articleSection":["Scala Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/scala-constructor\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/","url":"https:\/\/data-flair.training\/blogs\/scala-constructor\/","name":"Scala Constructor - 2 Popular Types of Constructors in Scala - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01.jpg","datePublished":"2018-06-09T04:20:02+00:00","dateModified":"2021-12-04T04:45:25+00:00","description":"What is Scala Constructor - Types of Constructor in Scala, Default Primary Constructor in Scala, Primary Constructors & Auxiliary Constructors in Scala","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/scala-constructor\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Scala-Constructor-01.jpg","width":1200,"height":628,"caption":"Scala Constructor - 2 Popular Types of Constructors in Scala"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/scala-constructor\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Scala Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/scala\/"},{"@type":"ListItem","position":3,"name":"Scala Constructor &#8211; 2 Popular Types of Constructors in Scala"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/2c58ecb4f73a39f0ef993f1ddfcd7b89","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"The DataFlair Team provides industry-driven content on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our expert educators focus on delivering value-packed, easy-to-follow resources for tech enthusiasts and professionals.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam2\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/18090","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=18090"}],"version-history":[{"count":6,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/18090\/revisions"}],"predecessor-version":[{"id":104737,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/18090\/revisions\/104737"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/18118"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=18090"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=18090"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=18090"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}