Webでオブジェクト指向プログラミング (442レス)
上下前次1-新
400: age 2009/11/12(木)11:26 ID:FhD9csek(1/2) AAS
class a {
function getA(){
{
return new b('hoge');
}
}
class b{
public $a;
protected $_z;
public function __construct($data)
{
$this->a = $data+$data;
$this->_z = $data;
}
}
上記のような、クラスがあって、aから、bが返されるのですが、bのprotected
のデータを取得したい場合はどうすればいいでしょうか。
たとえばbを継承したb'を作成し、zを取り出すメソッドを作っても、bのインスタンスを作成しているのは
aなのでb'のインスタンスは作られないですよね。
401: 2009/11/12(木)11:44 ID:??? AAS
よく分からんが
>たとえばbを継承したb'を作成し、zを取り出すメソッドを作っても、bのインスタンスを作成しているのは
>aなのでb'のインスタンスは作られないですよね。
aでb'のインスタンスを作るように変更すればいいのでは。
>上記のような、クラスがあって、aから、bが返されるのですが、bのprotected
>のデータを取得したい場合はどうすればいいでしょうか。
getZというメソッドを作るのはだめなの?
402: 2009/11/12(木)11:51 ID:??? AAS
ああ何となく分かった、既存のaにもbにも手を加えたくないのか
変更しないで挙動を変えたいなら、それこそa'とb'を作ってメソッドをオーバーライドするしかないかと
403: sage 2009/11/12(木)14:29 ID:FhD9csek(2/2) AAS
やっぱりオーバーライドするしかないですか。
有難う。
404: 2010/05/13(木)18:19 ID:9BJiXr6f(1) AAS
おいおいおい!!こんなのあるのかよ!
外部リンク:okamikakushi.net
俺やってみたけど、マジ寝てるだけで金くれたぞ!!
405: 2010/05/15(土)17:20 ID:??? AAS
治験ですね分かります
406(2): 2010/05/23(日)16:33 ID:ReStOCg4(1) AAS
他のプロジェクトで作成したフレームワーク、クラス、抽象クラス、インターフェースを
再利用したも猛者はいるか?
407: 2010/05/23(日)17:43 ID:??? AAS
>>406
そんなのどこでもやってるだろ。
408: 2010/05/24(月)21:51 ID:??? AAS
>>406ばっちりだ
409: 2010/05/27(木)12:15 ID:??? AAS
ていうか再利用できない/しないフレームワークなんて嫌だな
410: 2010/05/27(木)20:21 ID:P724q4SG(1) AAS
javascriptでツールチップを作れっ!オブジェクト指向チックによろしく!
って言われたら、どのようなオブジェクトを作りますか?
411: 2010/05/28(金)20:25 ID:??? AAS
まず
クライアントサイドプログラムはWeb制作板へ
って言います
412: 入社1ヶ月の新人が書いてきた。うれしい。 2010/07/14(水)20:35 ID:??? AAS
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<script>
//<!--
window.onload = function(){
kanako = createGirl('かなこ');
miku = createGirl('みく');
haruhi = createGirl('ハルヒ');
};
/*
* クローンを作成
*/
function createGirl( name )
{
var superClass = new girlClass();
var superClone = function(){};
superClone.prototype = superClass;
//これで他に影響ないクローン完成
var instanse = new superClone();
//いわゆるコンストラクタ
instanse.myName = name;
return instanse;
};
413(1): 入社1ヶ月の新人が書いてきた。うれしい。 2010/07/14(水)20:36 ID:??? AAS
/*
* おんにゃのこクラス定義
*/
function girlClass()
{
//プロパティ宣言
girlClass.prototype.myName = "";
//振る舞い
girlClass.prototype.writeMyName = function()
{
document.write("私は"+this.myName+"だよ。<br />");
};
}
//-->
</script>
</head>
<body>
<input type="button" value="Execute" onclick="onClickExecute()" />
<script type="text/javascript">
function onClickExecute()
{
//おんにゃのこに名前を言ってもらう。
kanako.writeMyName();
miku.writeMyName();
haruhi.writeMyName();
}
</script>
</body>
</html>
414: 2010/07/15(木)02:09 ID:??? AAS
おっそうかそうか
415(1): 2010/07/15(木)04:17 ID:hmDV/lDT(1/2) AAS
>>413
そんな事する意味が全くわからんwwww
なんのメリットがあるの??wwww
プロパティ宣言とかめっちゃウケルwww
416: 2010/07/15(木)13:49 ID:??? AAS
オブジェクトなんちゃのサンプルの悪いところはそこなんだよな。
なんでそんなことしなくちゃいけないんだよってやつ。
417: 2010/07/15(木)16:43 ID:??? AAS
window.onload = function(){
kanako = new girlClass('かなこ','girlmessage');
miku = new girlClass('みく','girlmessage');
haruhi = new girlClass('ハルヒ','girlmessage');
};
function girlClass( name , target )
{
girlClass.prototype.myName = name;
girlClass.prototype.target = target;
って書いたら全員ハルヒになったぞ
418: 2010/07/15(木)16:49 ID:??? AAS
そうか、プロトタイプとはそういう事ね
親クラスとして定義されている関数は触るなと。
了解した。
419: 2010/07/15(木)16:51 ID:??? AAS
>>415
>プロパティ宣言とかめっちゃウケルwww
ねーと使い方わからねーだろ屑
420: 2010/07/15(木)17:01 ID:??? AAS
誰か2回 new している説明をお願いします。
421: 2010/07/15(木)17:10 ID:hmDV/lDT(2/2) AAS
.
422: 2010/07/15(木)17:52 ID:??? AAS
残念だなあ。
君は何か勘違いしている様だけど、聞いて揚げ足取りをしたいんじゃなくて、
単純に君の意見が面白そうだから聞いてみたかっただけなんだよ。
もっとまともなレスを期待してたんだけど。ごめんね。
ちなみに君は揚げ足を取られる事を恐れているようだけど、それは違うと思う。
揚げ足を取られるのは、君に隙があるから。
隙だらけの人間ってのはそうやって余計な所でつまらない恥をかく事になるもんだよ。
他人につっこまれる事は、自身の知識をより客観的で多角的なものとする為に
有益な指針となるものだと思うな。
423: 2011/10/14(金)13:22 ID:oOJ5iuHv(1) AAS
オブジェクト指向って単純にいうと
パラメーターと処理を
外部からひっかきますことができない思考ってことですか?
424: 2011/10/14(金)14:09 ID:??? AAS
それは単なるカプセル化
425: 2011/10/15(土)08:06 ID:WVUj974d(1) AAS
パラメーターと処理を外部からひっかきますことができない思考 →カプセル化
CSSのカスケードみたいにカプセルを別のカプセルに引き継ぐ思考 →継承
?????? 思考 → ポリモーフィズム
426: 2011/10/19(水)11:59 ID:PXmn+I34(1) AAS
オブジェクト指向のクラスの中身は、
手続き型の記述がカプセリングされて入ってる・・・
と思って間違いないですか?
427: 2011/10/29(土)05:40 ID:??? AAS
間違いです
428: 2011/10/29(土)11:06 ID:??? AAS
理由が無いので、信じません。
次。
429(1): 2011/12/09(金)14:10 ID:jzegoNJ7(1) AAS
ポリモーフィズムってなんですか?
継承元の親クラスが、なんなのか?によって、
同じ名前のクラスが 全く違う動きをする
みたいなかんじですか?
となると子クラスには、親クラスがこうの時はこう、
親クラスからこういうパラメータが取ってこれてたらこう
みたいな処理がかかれてるんですか?
上下前次1-新書関写板覧索設栞歴
あと 13 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.011s