{"id":4988,"date":"2021-09-14T04:35:46","date_gmt":"2021-09-14T04:35:46","guid":{"rendered":"https:\/\/studysection.com\/blog\/?p=4988"},"modified":"2021-09-14T05:20:29","modified_gmt":"2021-09-14T05:20:29","slug":"object-typecasting","status":"publish","type":"post","link":"https:\/\/studysection.com\/blog\/object-typecasting\/","title":{"rendered":"Object Typecasting"},"content":{"rendered":"<h2>Introduction: <\/hg2><br \/>\nObject Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types, primitives and references.<\/p>\n<p>Primitive types are also known as value types, which means a variable contains the value itself. Most simply type data structure would look like this.<br \/>\n<img decoding=\"async\" src=\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/09\/figure.png\" alt=\"figure\"\/><br \/>\nIn this figure, we can see that primitive data types are stored inside stack memory and the variables point to a memory location. The variable value is placed next to the variable label in memory.<\/p>\n<p>On the other hand, reference types hold reference or address of the object data, however, that address binding with the label of variable is inside the stack memory, opposite to this variable data is stored inside Heap memory.<br \/>\n<img decoding=\"async\" src=\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/09\/figure1.png\" alt=\"typecasting figure1\"\/><\/p>\n<h3>General Typecasting Equation :<\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/09\/figure2.png\" alt=\"typecasting figure2\"\/><br \/>\nThis is an object instantiation equation or statement. We have an object of type <strong>A<\/strong> having a name or label on it of <strong>B<\/strong>.<br \/>\nWhile typecasting, there are some sets of rules that must be followed, to ensure a successful conversion. Below we are discussing them.<\/p>\n<h3>Type Casting Rules:<\/h3>\n<ol>\n<li><strong>Compile-time checking 1: <\/strong><br \/>\nType of <strong>\u201cD\u201d<\/strong> (refers to the General typecasting equation) and <strong>\u201cC\u201d<\/strong> must have some relation in between them. Either child to parent or parent to child or must be of the same type, otherwise, we will get a compile-time error.<br \/>\n<code>Case 1.<br \/>\n\tObject o = \"Hello World\";<br \/>\n        StringBuilder sb = (StringBuilder)o;<\/code><br \/>\nThis code will compile successfully. The object is the topmost class or parent of all types. A string of data can easily hold an Object type.<br \/>\nAfter that, object and StringBuilder have a parent\/child relationship, however, to convert from parent to child type, we need to explicitly mention the typecasting.<br \/>\n<code>Case 2.<br \/>\nstring s = \"Hello World\";<br \/>\nStringBuilder sb = (StringBuilder)s;<\/code><br \/>\nThis code will raise a compile-time error in the second line, where we are explicitly converting a string to the StringBuilder type. There is no relationship between string and StringBuilder type.<br \/>\n<strong>Error description :<\/strong><br \/>\n<em style=\"color:red;\">Compile Time Error: Cannot convert type &#8216;string&#8217; to &#8216;System.Text.StringBuilder<\/em>\n<\/li>\n<li><strong>Compile-time checking 2:<\/strong><br \/>\n<strong>\u201cC\u201d<\/strong> must be either the same or derived\/child type of <strong>\u201cA\u201d<\/strong>, otherwise we will get a compile-time error.<br \/>\n<code>Case 1.<br \/>\n      Object o = \"Hello World\";<br \/>\n      StringBuilder sb = (StringBuilder)o;<\/code><br \/>\nThis code will compile successfully.<br \/>\n<code>Case 2.<br \/>\n\tObject o = \"Hello World\";<br \/>\n        StringBuilder sb = (string)o;<\/code><br \/>\nThe string is not a derived class of StringBuilder and not the same at all, so this code fails to follow rule Compile-time checking 2. Consequently, it will raise a compile-time error.<br \/>\n<strong>Error description:<\/strong><br \/>\n<em style=\"color:red;\">Compile Time Error:<br \/>\nCannot implicitly convert type &#8216;string&#8217; to &#8216;System.Text.StringBuilder&#8217;<\/em>\n<\/li>\n<li><strong>Runtime checking:<\/strong><br \/>\nType of \u201cD\u201d must be either the same or derived type of \u201cC\u201d, otherwise, we will get a runtime exception,<br \/>\n<code>Case 1.<br \/>\n\tObject o = \"Hello World\";<br \/>\n        StringBuilder sb = (StringBuilder)o;<\/code><br \/>\nThis code will compile with no errors. However, when we try to run it, it will throw a runtime exception.<br \/>\nAt runtime  \u201co\u201d will be of string type, which means, when the runtime environment will execute a second statement, it has to convert a string type variable to a StringBuilder type and we have already seen that there is no any relationship between them.<br \/>\n<strong>Error Description: <\/strong><br \/>\n<em style=\"color:red;\">Runtime Exception: System.InvalidCastException<br \/>\nUnable to cast object of type &#8216;System.String&#8217; to type &#8216;System.Text.StringBuilder<\/em><br \/>\n<code>Case 2.<br \/>\n      What do you think, will the following code snippet compile and run without any issue.<br \/>\n      Object o = \"Hello World\";<br \/>\n      Object o1 = (string)o;<\/code><br \/>\nAt runtime, o will be of type string the same as \u201cstring\u201d, resulting in a successful type conversion and the program runs smoothly.<\/p>\n<p><em>Let\u2019s revise these rules by a quick example:<\/em><br \/>\n<strong>Question1:<\/strong> an object is created using the following statement<br \/>\n<em style=\"color:red;\">Base2 b = new Dev4();<\/em><br \/>\nThis diagram shows the sample class hierarchy. We will follow this to answer the questions.<br \/>\n<img decoding=\"async\" src=\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/09\/figure3.png\" alt=\"figure3\"\/><br \/>\nTry to answer the following, while typecasting object \u201cb\u201d if they follow all of the 3 type casting rules, if not mention error\/exception details.<\/p>\n<ol>\n<li>Object o = (Base2)b;<\/li>\n<li>Object o = (Base1)b;<\/li>\n<li>Object o = (Dev3)b;<\/li>\n<li>Base1 b1 = (Base1)b;<\/li>\n<li>Base1 b1 = (Dev4)b;<\/li>\n<li>Base1 b1 = (Dev1)b;<\/li>\n<\/ol>\n<p><strong>Answers :<\/strong><\/p>\n<ol>\n<li>Correct Statement.<\/li>\n<li>Raised compile-time error: <em style=\"color:red;\">Cannot convert type &#8216;Base2&#8217; to \u2018Base1\u2019.  It implies that there is no direct relationship between Base2 and Base1.<\/em><\/li>\n<li>Raised Runtime-Exception error: <em style=\"color:red;\">The statement will compile without any <a href=\"https:\/\/studysection.com\/blog\/how-to-debug-or-view-errors-on-ipad-or-iphone\/\">error<\/a>, yet, it throws a runtime error. Unable to cast object of type \u2019Dev4\u2019 to type \u2018Desc3\u2019.<br \/>\nExplained:<br \/>\n\tReferring to our primary equation, we are calling a constructor of type Dev4 and assigning the instance into a Base2 type object. It means at runtime, we will have an object of Dev4 and in the 2nd statement, we are typecasting it into Dev3. It is evident from the graphic that Dev3 and Dev4 do not have any parent-child relationship between them. <\/em><\/li>\n<li>Raised compile-time error: <em style=\"color:red;\">Inconvertible type casting &#8216;Base2&#8217; to \u2018Base1\u2019.  Base2 and Base1 do not have any relation between them.<\/em><\/li>\n<li>Raised compile-time error: <em style=\"color:red;\">Incompatible type \u2018Dev4\u2019 to \u2018Base1\u2019. Assignment of \u2018Dev4\u2019 to \u2018Base1\u2019 is incompatible due to the absence of the necessary relation.<\/em><\/li>\n<li>Raised compile-time error: <em style=\"color:red;\">Inconvertible type \u2018Dev1\u2019 to \u2018Base2\u2019. Converting \u2018b\u2019 to \u2018Dev1\u2019 is not allowed.<\/em><\/li>\n<\/ol>\n<h3>More examples:<\/h3>\n<p>In this section, we will talk about the effect of typecasting on method resolutions<br \/>\n<strong>Case 1:<\/strong><br \/>\nConsider following class hierarchy. There is a class P and its child class C. Note they have their methods.<br \/>\n<code>class P<br \/>\n    {<br \/>\n        public void m1()<br \/>\n        { }<br \/>\n    }<br \/>\n    class C : P<br \/>\n    {<br \/>\n        public void m2()<br \/>\n        { }<br \/>\n    }<\/code><br \/>\nNow, Inside the main method, we write this code :<br \/>\n<code>class Program    {<br \/>\n        static void Main(string[] args)        {<br \/>\n            P p = new C();<br \/>\n            p.m1();<br \/>\n            p.m2();<br \/>\n        }<br \/>\n    }<\/code><br \/>\nWill this code compile?<br \/>\nThe answer is No, Because, parent references can be used to hold child objects, but by using that reference, we can&#8217;t call child-specific methods and we can call only methods present inside parent class.<\/p>\n<p>Due to this, we will get a compile-time error<br \/>\n<em style=\"color:red;\">&#8216;P&#8217; does not contain a definition for &#8216;m2&#8217; and no accessible extension method &#8216;m2&#8217; accepting a first argument of type &#8216;P&#8217; could be found.<\/em><br \/>\n<strong>Case 2:<\/strong><br \/>\nHere we have almost the same code as in the previous case. However, the only difference is we have overridden the method inside the child class.<br \/>\n<code> class Animal<br \/>\n    {<br \/>\n        \/\/Animal Class<br \/>\n        public virtual void Sound()<br \/>\n        {<br \/>\n            Console.WriteLine(\"Generic Animal Sound\");<br \/>\n        }<br \/>\n  public void Walk()<br \/>\n        {<br \/>\n            Console.WriteLine(\"Generic Animal Walking\");<br \/>\n        }<br \/>\n    }<br \/>\n    class Monkey: Animal<br \/>\n    {<br \/>\n        \/\/Monkey Class<br \/>\n        public override void Sound()<br \/>\n        {<br \/>\n            Console.WriteLine(\"Monkey Sound\");<br \/>\n        }<br \/>\n    }<br \/>\n    class Program<br \/>\n    {<br \/>\n        static void Main(string[] args)<br \/>\n        {<br \/>\n            Monkey m = new Monkey();<br \/>\n            m.Sound();<br \/>\n            \/\/ Output: Monkey Sound<br \/>\n            ((Animal)m).Walk();<br \/>\n            \/\/ Output: Generic Animal Walking<br \/>\n            ((Animal)m).Sound();<br \/>\n            \/\/ Output: Monkey Sound<br \/>\n   }<br \/>\n    }<\/code>\n<\/li>\n<\/ol>\n<p>It is reasonable behavior that we get output as \u201cMonkey Sound\u201d from a Sound method of Monkey, similarly, it is also normal to get \u201cGeneric Animal Walking\u201d output from the Walk method because we typecast the Monkey object to Animal type.<br \/>\nAlthough, by calling the Sound method, in general, we should get an output of \u201cGeneric Animal Sound\u201d, but we got \u201cMonkey Sound\u201d. This is because of the Overriding process, the Sound method of the Animal class got overridden by the Sound Method of the Monkey class.<br \/>\nMethod Overriding is a runtime process, which means method resolution at runtime will be based on the type of runtime object.<br \/>\nHere, at runtime, the object is of type Monkey, consequently, this output.<\/p>\n<p><small><em>Microsoft Windows 10 is a widely used operating system in computers all over the world. If you have skills in Microsoft Windows 10 then you can get a <a href=\"https:\/\/www.studysection.com\/windows-10-advanced\">Windows 10 Certification<\/a> from StudySection which can help you in getting hired. A beginner level certification exam for newbies and an advanced level certification exam for experts is available on StudySection.<\/em><\/small><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction: Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2<\/p>\n","protected":false},"author":1,"featured_media":4989,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[710,712],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Object Typecasting in Data Structure - StudySection Blog<\/title>\n<meta name=\"description\" content=\"Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/studysection.com\/blog\/object-typecasting\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Object Typecasting in Data Structure - StudySection Blog\" \/>\n<meta property=\"og:description\" content=\"Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/studysection.com\/blog\/object-typecasting\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Posts on famous people, innovations and educational topics\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/studysection\" \/>\n<meta property=\"article:published_time\" content=\"2021-09-14T04:35:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-09-14T05:20:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/09\/Casting.png\" \/>\n\t<meta property=\"og:image:width\" content=\"300\" \/>\n\t<meta property=\"og:image:height\" content=\"200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"admin-studysection-blog\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@studysection\" \/>\n<meta name=\"twitter:site\" content=\"@studysection\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin-studysection-blog\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/studysection.com\/blog\/object-typecasting\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/studysection.com\/blog\/object-typecasting\/\"},\"author\":{\"name\":\"admin-studysection-blog\",\"@id\":\"https:\/\/studysection.com\/blog\/#\/schema\/person\/db367e2c29a12d1808fb1979edb3d402\"},\"headline\":\"Object Typecasting\",\"datePublished\":\"2021-09-14T04:35:46+00:00\",\"dateModified\":\"2021-09-14T05:20:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/studysection.com\/blog\/object-typecasting\/\"},\"wordCount\":1089,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/studysection.com\/blog\/#organization\"},\"keywords\":[\"Object\",\"Typecasting\"],\"articleSection\":[\"Learn and Grow\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/studysection.com\/blog\/object-typecasting\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/studysection.com\/blog\/object-typecasting\/\",\"url\":\"https:\/\/studysection.com\/blog\/object-typecasting\/\",\"name\":\"Object Typecasting in Data Structure - StudySection Blog\",\"isPartOf\":{\"@id\":\"https:\/\/studysection.com\/blog\/#website\"},\"datePublished\":\"2021-09-14T04:35:46+00:00\",\"dateModified\":\"2021-09-14T05:20:29+00:00\",\"description\":\"Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types.\",\"breadcrumb\":{\"@id\":\"https:\/\/studysection.com\/blog\/object-typecasting\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/studysection.com\/blog\/object-typecasting\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/studysection.com\/blog\/object-typecasting\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/studysection.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Object Typecasting\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/studysection.com\/blog\/#website\",\"url\":\"https:\/\/studysection.com\/blog\/\",\"name\":\"Blog Posts on famous people, innovations and educational topics\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/studysection.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/studysection.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/studysection.com\/blog\/#organization\",\"name\":\"StudySection\",\"url\":\"https:\/\/studysection.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/studysection.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/10\/studySection-logo.png\",\"contentUrl\":\"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/10\/studySection-logo.png\",\"width\":920,\"height\":440,\"caption\":\"StudySection\"},\"image\":{\"@id\":\"https:\/\/studysection.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/studysection\",\"https:\/\/twitter.com\/studysection\",\"https:\/\/www.instagram.com\/study.section\/\",\"https:\/\/www.linkedin.com\/company\/studysection\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/studysection.com\/blog\/#\/schema\/person\/db367e2c29a12d1808fb1979edb3d402\",\"name\":\"admin-studysection-blog\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/studysection.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/054ac87a6874df1932004239cd8eab36?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/054ac87a6874df1932004239cd8eab36?s=96&d=mm&r=g\",\"caption\":\"admin-studysection-blog\"},\"url\":\"https:\/\/studysection.com\/blog\/author\/admin-studysection-blog\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Object Typecasting in Data Structure - StudySection Blog","description":"Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types.","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:\/\/studysection.com\/blog\/object-typecasting\/","og_locale":"en_US","og_type":"article","og_title":"Object Typecasting in Data Structure - StudySection Blog","og_description":"Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types.","og_url":"https:\/\/studysection.com\/blog\/object-typecasting\/","og_site_name":"Blog Posts on famous people, innovations and educational topics","article_publisher":"https:\/\/www.facebook.com\/studysection","article_published_time":"2021-09-14T04:35:46+00:00","article_modified_time":"2021-09-14T05:20:29+00:00","og_image":[{"width":300,"height":200,"url":"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/09\/Casting.png","type":"image\/png"}],"author":"admin-studysection-blog","twitter_card":"summary_large_image","twitter_creator":"@studysection","twitter_site":"@studysection","twitter_misc":{"Written by":"admin-studysection-blog","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/studysection.com\/blog\/object-typecasting\/#article","isPartOf":{"@id":"https:\/\/studysection.com\/blog\/object-typecasting\/"},"author":{"name":"admin-studysection-blog","@id":"https:\/\/studysection.com\/blog\/#\/schema\/person\/db367e2c29a12d1808fb1979edb3d402"},"headline":"Object Typecasting","datePublished":"2021-09-14T04:35:46+00:00","dateModified":"2021-09-14T05:20:29+00:00","mainEntityOfPage":{"@id":"https:\/\/studysection.com\/blog\/object-typecasting\/"},"wordCount":1089,"commentCount":0,"publisher":{"@id":"https:\/\/studysection.com\/blog\/#organization"},"keywords":["Object","Typecasting"],"articleSection":["Learn and Grow"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/studysection.com\/blog\/object-typecasting\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/studysection.com\/blog\/object-typecasting\/","url":"https:\/\/studysection.com\/blog\/object-typecasting\/","name":"Object Typecasting in Data Structure - StudySection Blog","isPartOf":{"@id":"https:\/\/studysection.com\/blog\/#website"},"datePublished":"2021-09-14T04:35:46+00:00","dateModified":"2021-09-14T05:20:29+00:00","description":"Object Typecasting is a process of converting one data structure into another. The type system is categorized into 2 types.","breadcrumb":{"@id":"https:\/\/studysection.com\/blog\/object-typecasting\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/studysection.com\/blog\/object-typecasting\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/studysection.com\/blog\/object-typecasting\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/studysection.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Object Typecasting"}]},{"@type":"WebSite","@id":"https:\/\/studysection.com\/blog\/#website","url":"https:\/\/studysection.com\/blog\/","name":"Blog Posts on famous people, innovations and educational topics","description":"","publisher":{"@id":"https:\/\/studysection.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/studysection.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/studysection.com\/blog\/#organization","name":"StudySection","url":"https:\/\/studysection.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/studysection.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/10\/studySection-logo.png","contentUrl":"https:\/\/studysection.com\/blog\/wp-content\/uploads\/2021\/10\/studySection-logo.png","width":920,"height":440,"caption":"StudySection"},"image":{"@id":"https:\/\/studysection.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/studysection","https:\/\/twitter.com\/studysection","https:\/\/www.instagram.com\/study.section\/","https:\/\/www.linkedin.com\/company\/studysection"]},{"@type":"Person","@id":"https:\/\/studysection.com\/blog\/#\/schema\/person\/db367e2c29a12d1808fb1979edb3d402","name":"admin-studysection-blog","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/studysection.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/054ac87a6874df1932004239cd8eab36?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/054ac87a6874df1932004239cd8eab36?s=96&d=mm&r=g","caption":"admin-studysection-blog"},"url":"https:\/\/studysection.com\/blog\/author\/admin-studysection-blog\/"}]}},"views":822,"_links":{"self":[{"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/posts\/4988"}],"collection":[{"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/comments?post=4988"}],"version-history":[{"count":6,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/posts\/4988\/revisions"}],"predecessor-version":[{"id":5000,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/posts\/4988\/revisions\/5000"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/media\/4989"}],"wp:attachment":[{"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/media?parent=4988"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/categories?post=4988"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/studysection.com\/blog\/wp-json\/wp\/v2\/tags?post=4988"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}