{"id":1071,"date":"2016-01-07T10:06:33","date_gmt":"2016-01-07T10:06:33","guid":{"rendered":"http:\/\/coolt.ch\/notizen\/?p=1071"},"modified":"2016-01-07T11:48:56","modified_gmt":"2016-01-07T11:48:56","slug":"swift-constructor","status":"publish","type":"post","link":"https:\/\/coolt.ch\/notizen\/swift-constructor\/","title":{"rendered":"Swift: Constructor"},"content":{"rendered":"<p><strong>Implizite Variablendeklaration gilt beim Konstruktor nicht<\/strong><\/p>\n<p>Swift kennt die implizite Variablendeklatration:<span class=\"lang:sh decode:true crayon-inline \"> let a = 5.<\/span>\u00a0 So ist die Variable a implizit ein Integer.<\/p>\n<pre class=\"lang:swift decode:true\">class Shape {\r\n  var numberOfSides = 0\r\n\r\n  init(numberOfSides<strong>:Int<\/strong>){\r\n     self.numberOfSides = numberOfSides\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Instanzierung bedingt Wertzuweisung<\/strong><br \/>\nBei der Instanzierung muss dem Argument ein Wert\u00a0 zugewiesen werden.<\/p>\n<pre class=\"lang:sh decode:true\">var s1 = Shape(<strong>numberOfSides: 4<\/strong>);  \/\/ <strong>numberOfSides = 4<\/strong><\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Konstruktor einer vererbten Klasse<\/strong><\/p>\n<p>Der Konstruktor muss mindestens die Argumente der Superklasse enthalten. Kann auch eigene Klassenvariablen zus\u00e4tzlich auflisten<\/p>\n<pre class=\"lang:sh decode:true\">init(numberOfSides:Int, name:String){\r\n    <strong>super.init(<\/strong>numberOfSides = numberOfSides<strong>)<\/strong>  \/\/ Zuweisung Superklasse\r\n    self.name = name     \/\/ Zuweisung zu eigener Klassenvariable\r\n}<\/pre>\n<p>Mehr Details zur Vererbung in anderem Beitrag.<\/p>\n<p>&nbsp;<\/p>\n<p>..<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Implizite Variablendeklaration gilt beim Konstruktor nicht Swift kennt die implizite Variablendeklatration: let a = 5.\u00a0 So ist die Variable a implizit ein Integer. class Shape { var numberOfSides = 0 init(numberOfSides:Int){ self.numberOfSides = numberOfSides } &nbsp; Instanzierung bedingt Wertzuweisung Bei der Instanzierung muss dem Argument ein Wert\u00a0 zugewiesen werden. var s1 = Shape(numberOfSides: 4); \/\/ &hellip; <a href=\"https:\/\/coolt.ch\/notizen\/swift-constructor\/\" class=\"more-link\"><span class=\"screen-reader-text\">Swift: Constructor<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[73],"tags":[74],"_links":{"self":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts\/1071"}],"collection":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/comments?post=1071"}],"version-history":[{"count":4,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts\/1071\/revisions"}],"predecessor-version":[{"id":1075,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/posts\/1071\/revisions\/1075"}],"wp:attachment":[{"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/media?parent=1071"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/categories?post=1071"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/coolt.ch\/notizen\/wp-json\/wp\/v2\/tags?post=1071"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}