2012年12月1日土曜日

開発環境

『初めてのC# 第2版』(Jesse Liberty+Brian MacDonald著、日向俊二訳、オライリー・ジャパン、2006年、ISBN978-487311-294-7)の 第9章(継承とポリモーフィズム)11.9(練習問題)練習11-1を解いてみる。

その他参考書籍

練習11-1.

コード

using System;

class Telephone
{
    protected string phonetype;
    public void Ring()
    {
        Console.WriteLine("Ringing the {0}", phonetype);
    }
}

class ElectronicPhone : Telephone
{
    public ElectronicPhone()
    {
        phonetype = "Digital";
    }
}

class Tester
{
    public void Run()
    {
        ElectronicPhone ep = new ElectronicPhone();
        ep.Ring();
    }
    static void Main()
    {
        Tester t = new Tester();
        t.Run();
    }
}

入出力結果(Console Window)

Ringing the Digital
続行するには何かキーを押してください . . .

ちなみにJavaScriptの場合。

コード(TextWrangler)

var result = "";
var Telephone = function(){
  this.phone_type; 
  this.ring = function(){
    return "Ringing the " + this.phone_type;
  };
};

var ElectronicPhone = function(){
  this.phone_type = "Digital";
};

ElectronicPhone.prototype = new Telephone();
ElectronicPhone.prototype.constructor = ElectronicPhone;

var ep = new ElectronicPhone();

result += ep.ring() + "\n";
$('#pre0').text(result);





pythonの場合。

sample.py

コード(TextWrangler)

#!/usr/bin/env python3.3
# -*- coding: utf-8 -*-

class Telephone:
    def __init__(self):
        self.phonetype = "Telephone"
    def ring(self):
        print("Ringing the {0}.".format(self.phonetype))

class ElectronicPhone(Telephone):
    def __init__(self):
        self.phonetype = "Digital";

ep = ElectronicPhone()
ep.ring()

入出力結果(Terminal)

$ ./sample.py
Ringing the Digital.
$

0 コメント:

コメントを投稿