アプリ版:「スタンプのみでお礼する」機能のリリースについて

javascriptを勉強してるんですが基底クラスや派生クラスという言葉がでてきます
よくわかりません(´;ω;`)
教えてください!お願いします!

A 回答 (2件)

JavaScript にクラスは無いので、C++/Java の様にクラスっぽい何かを実現して、コーディングを楽にさせようという、一部の技術者が使う隠語ではないかと推測します。



例を書いてみました。

/** 基底クラスの様な何か. */
function Man() {}
Man.prototype.punch = function() {/*パンチを繰り出す処理*/};
Man.prototype.think = function() {/*ものすごい長い処理*/};

/** 派生クラスの様な何か. */
function UltraMan() {}
UltraMan.ptototype = new Man(); // 基本的に Man と同じ
UltraMan.ptototype.beam = function() {/*新必殺技の処理*/};

/** 派生クラスの派生クラスの様な何か. */
function SuperUltraMan() {}
SuperUltraMan.prototype = new UltraMan(); // 基本的に UltraMan と同じ
SuperUltraMan.prototype.punch = function() {/*強いパンチを繰り出す処理*/};

var mans = [ new Man(), new UltraMan(), new SuperUltraMan() ];

// Man 達に同じ命令をする
mans.forEach(function(man){ man.think() }); // クラスの凡化を実現
mans.forEach(function(man){ man.punch() }); // クラスの多様性を実現

// Man 達の中から特定のクラスに分類される Man を抜き出して、同じ命令をする
mans
.filter(function(man){return man instanceof UltraMan})
.forEach(function(man){ man.beam() }); // UltraMan に分類されるなら実行できる処理


しかし JavaScript はあくまでもプロトタイプベースのオブジェクト指向言語ですので、この方向に深入りすると危険です。あくまでも、こんな書き方もできる程度の軽い気持ちでいてください。
    • good
    • 0

入門レベルのjsで習うんですか。


時代も変わったものですね。

基底クラスとは親クラス、派生クラスとは子クラスのことです。
継承の元になったクラスを親(ベース)、機能(メソッド)を継承したクラスを子と呼びます。
車(ベース)から派生してパトカーや消防車ができたようなものです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!