2014年9月26日金曜日

開発環境

Head First JavaScript Programming (Eric T. Freeman (著)、 Elisabeth Robson (著)、 O'Reilly Media )のChapter 12(Creating object: Advanced Object Construction)、EXERCISE(p.537)をSwiftで考えてみる。

EXERCISE(p.537)

コード(Xcode)

main.swift

//
//  main.swift
//  sample537
//
//  Created by kamimura on 9/26/14.
//  Copyright (c) 2014 kamimura. All rights reserved.
//

import Foundation

class Car {
    let make:String
    let model:String
    let year:Int
    let color:String
    let passenger:Int
    let convertible:Bool
    let mileage:Int
    var started:Bool?
    
    init(make:String, model:String, year:Int, color:String, passenger:Int, convertible:Bool, mileage:Int) {
        self.make = make
        self.model = model
        self.year = year
        self.color = color
        self.passenger = passenger
        self.convertible = convertible
        self.mileage = mileage
    }
    
    func start() {
        self.started = true
    }
    func stop() {
        self.started = false
    }
    func drive () {
        if self.started != nil && self.started! {
            println("\(self.make) \(self.model) goes zoom zoom!")
            
        } else {
            println("Start the engine first.")
        }
    }
}

let chevy:Car = Car(make: "Chevy", model: "Bel Air", year: 1957, color: "red", passenger: 2, convertible: false, mileage: 1021)

chevy.drive()
chevy.start()
chevy.drive()
chevy.stop()
chevy.drive()

入出力結果(Console Output)

Start the engine first.
Chevy Bel Air goes zoom zoom!
Start the engine first.
Program ended with exit code: 0

0 コメント:

コメントを投稿