设为首页 加入收藏

TOP

Swift----方法 、 下标 、 继承 、 初始化 、 析构方法 、 可选链(四)
2017-10-10 12:17:37 】 浏览:9631
Tags:Swift---- 方法 下标 继承 初始
lue = blue 426 } 427 init(_ red:Double, _ green:Double, _ blue:Double){ 428 self.red = red 429 self.green = green 430 self.blue = blue 431 } 432 } 433 let color = Color(red: 10, green: 10, blue: 10) 434 let color2 = Color(10,20,30) 435 //默认构造方法 436 //class ShoppingListItem { 437 // varname:String? 438 // var quantity = 1 439 // var purchased = false 440 //} 441 //var s = ShoppingListItem() 442 //结构体逐一成员构造方法 443 struct Size { 444 var width = 0.0 445 var height = 0.0 446 } 447 var size = Size(width: 10, height: 20) 448 //值类型的构造委托 449 struct Point { 450 var x = 0.0 451 var y = 0.0 452 } 453 structRect { 454 var origin = Point() 455 var size = Size() 456 init(){} 457 init(origin:Point,size:Size){ 458 self.origin = origin 459 self.size = size 460 } 461 init(center:Point,size:Size){ 462 letoriginX = center.x-size.width/2 463 letoriginY = center.y-size.height/2 464 self.init(origin: Point(x: originX, y: originY), size:size) 465 } 466 } 467 varrect = Rect(center:Point(x: 20, y: 20), size:Size(width:20,height:30)) 468 rect.origin 469 rect.size 470 //类类型的构造委托 471 class Food { 472 var name :String 473 //指定构造方法 474 init(name :String) { 475 self.name = name 476 } 477 //便利构造方法 478 convenienceinit(){ 479 self.init(name:"unnamed") 480 } 481 } 482 let meat = Food(name: "meat") 483 meat.name 484 let food = Food() 485 food.name 486 classRecipeIngredient : Food { 487 var quantity : Int 488 //指定构造器 489 init(name: String, quantity:Int) { 490 //必须先初始化本类定义的属性,才能调用父类的构造器 491 self.quantity = quantity 492 super.init(name: name) 493 //如果需要在子类中给继承来的属性赋值,需要写在super.init的后面 494 //self.name = name 495 } 496 //便利构造器,且覆盖了父类的构造器 497 override convenience init(name: String) { 498 self.init(name:name, quantity:1) 499 } 500 } 501 let r1 = RecipeIngredient() 502 let r2 = RecipeIngredient(name: "") 503 let r3 = RecipeIngredient(name: "辣椒", quantity:5) 504 classShoppingListItem : RecipeIngredient{ 505 var purchased = false 506 var description : String { 507 var output = "\(self.quantity) x \(name)" 508 output += purchased ? "?" : "x" 509 return output 510 } 511 } 512 let item1 = ShoppingListItem() 513 let item2 = ShoppingListItem(name: "苹果") 514 let item3 = ShoppingListItem(name: "泡面", quantity: 10)

 

首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇窥探Swift编程之强大的Switch 下一篇CocoaPods的安装和使用那些事(Xc..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目