吉里吉里2 Ver2.32r2に付属のドキュメント追加

This commit is contained in:
Takenori Imoto
2016-09-08 17:28:20 +09:00
parent adbe9eca5e
commit 8713024d66
804 changed files with 52818 additions and 1 deletions

View File

@@ -0,0 +1,360 @@
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<!-- generated by to_html.pl from class.xml -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<title>�N���X</title>
<meta name="author" content="W.Dee" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<link href="browser.css" type="text/css" rel="stylesheet" title="�g���g���֘A���t�@�����X�p�W���X�^�C��" />
<link href="mailto:[email protected]" rev="Made" />
<link href="index.html" target="_top" rel="Start" title="�g�b�v�y�[�W" />
</head>
<body>
<h1><a id="id47" name="id47">�N���X</a>
</h1><div class="para"><div>
�@�N���X�́A�I�u�W�F�N�g���쐬�����Ƃ��̐��`�ƂȂ����̂ł��B�N���X�ɑ������ϐ��������o�ϐ��A�N���X�ɑ������֐��������o�֐��A���邢�̓��\�b�h�ƌĂсA�N���X�ɑ������v���p�e�B�̓����o�v���p�e�B�ƌĂт܂��B<br />
<br />
�@�N���X�͊��{�I�ɂ͈ȉ��̂悤�ɂ��Đ錾���܂��B<br />
<br />
<code class="bq"><a id="id48" name="id48" class="targanchor"><dfn>class</dfn></a>&nbsp;classname<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�����o�⃁���o���\�b�h�⃁���o�v���p�e�B���L�q</span><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;classname()&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;<a id="id49" name="id49" class="targanchor"><dfn>finalize</dfn></a>()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}<br />
<br />
</code>
<br />
<br />
�@�N���X���ɂ͎��ʎq���w�肵�܂��B<br />
<br />
�@�N���X���ɂ́A���̃N���X���쐬���ꂽ�Ƃ��Ƀ����o�ƂȂ��ϐ��⃁�\�b�h�A�v���p�e�B���L�q���܂��B<br />
<br />
�@�N���X���ɂ́A�N���X�Ɠ����̃��\�b�h���K�����‚����A<a id="id50" name="id50" class="targanchor"><dfn>�R���X�g���N�^</dfn></a>�ƌĂ΂��܂��B�����́A <a id="id51" name="id51" class="targanchor"><dfn>new</dfn></a> ���Z�q���g�p���ăI�u�W�F�N�g���쐬�����Ƃ��A���̊֐��� new ���Z�q�̈����𔺂��ČĂяo�����܂��B<br />
<br />
�@�N���X���ɂ͓��l�ɁAfinalize �Ƃ��������ȃ��\�b�h�������܂��B�����́A�I�u�W�F�N�g�����ł����Ƃ��ɌĂ΂��郁�\�b�h�ŁA�ȗ��”\�ł��B�����Ȃ��Ă����܂��܂����B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;test<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;test()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�����ɁA�I�u�W�F�N�g���쐬�������Ƃ��ɏ����������e������</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;variable&nbsp;=&nbsp;0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;finalize&nbsp;���\�b�h</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�����ɁA�I�u�W�F�N�g���j���������Ƃ��ɏ����������e������</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;method1()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;���\�b�h</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.inform(variable);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;variable;&nbsp;<span class="comment">//&nbsp;�����o�ϐ�</span><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;property&nbsp;prop&nbsp;<span class="comment">//&nbsp;�����o�v���p�e�B</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getter()&nbsp;{&nbsp;return&nbsp;variable;&nbsp;}&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</code>
<br />
<br />
�N���X�ɑ΂��� instanceof ���Z�q�� &quot;Class&quot; �𔺂��Ďg�p�����ꍇ�͐^�ɂȂ��܂�(���L�̗��Ō����ƁAtest instanceof &quot;Class&quot; �͐^)�B<br />
</div></div>
<h1><a id="id52" name="id52">�I�u�W�F�N�g�̍쐬</a>
</h1><div class="para"><div>
�@�錾�����N���X�̃I�u�W�F�N�g���쐬�����ɂ� new ���Z�q���g���܂��B<br />
�@new ���Z�q�̌��ɂ́A�֐��Ăяo���Ɠ��l�ɁA�N���X���ƁA�R���X�g���N�^�ɓn���������w�肵�܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Test<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;variable1&nbsp;=&nbsp;getValue();&nbsp;<span class="comment">//&nbsp;�����o�ϐ��̏�����</span><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Test(arg1,&nbsp;arg2)&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�����ł�&nbsp;new&nbsp;���Z�q�Ŏw�肵��������&nbsp;arg1&nbsp;��&nbsp;arg2&nbsp;�ɂ킽���Ă���</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;newobject&nbsp;=&nbsp;new&nbsp;Test(1,&nbsp;2);&nbsp;<span class="comment">//&nbsp;������&nbsp;1,&nbsp;2&nbsp;���n����&nbsp;test&nbsp;�N���X�̃I�u�W�F�N�g���쐬</span><br />
</code>
<br />
<br />
�@�N���X���쐬�������Ƃ��̏����̏��Ԃ͈ȉ��̒ʂ��ł��B<br />
<br />
<ol><li>�܂����̃I�u�W�F�N�g���쐬������</li><li>���\�b�h�A�v���p�e�B���o�^������</li><li>�����o�ϐ����쐬������ ( ���̂Ƃ����������K�v�ȕϐ��͏����������� )</li><li>�R���X�g���N�^�����s������</li></ol><br /><div class="note"><div class="notehead"><span class="noteheadspan">Note</span></div>
�@�R���X�g���N�^�ւ̈������Ȃ��ꍇ�ł����Ă��Anew ���Z�q�� ( ) ���ȗ����邱�Ƃ͂ł��܂����B JavaScript �̂悤�� new Test �Ə������Ƃ͂ł��܂����Bnew Test( ) �Ə����K�v�������܂��B<br />
</div><br />
<br />
�@���ɁA�N���X�̃��\�b�h���v���p�e�B���ł��̃N���X�̃I�u�W�F�N�g���쐬�����ꍇ�A���邢�͂��̃N���X�̃X�[�p�[�N���X�̃I�u�W�F�N�g���쐬�����ꍇ�A�ȉ��̂悤�ɂ����ƃG���[�ɂȂ��܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Test<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Test()&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;func()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;new&nbsp;Test();&nbsp;<span class="comment">//&nbsp;�G���[</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</code>
<br />
<br />
�@�Ȃ��Ȃ��΁A�N���X�̃��\�b�h���v���p�e�B���� Test �ƒP�ɏ����ƁA�N���X�ł��� Test ���������̃R���X�g���N�^�� Test �̕����X�R�[�v�I�ɋ߂����߁A�R���X�g���N�^�� Test �Q�Ƃ����Ă��܂������ł��B���̏ꍇ�͂����������邽�߂ɁA�ȉ��̂悤�ɖ����I�� global. ���g�p�����K�v�������܂� ( �N���X�� global �ɓo�^�����邩���ł� )�B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Test<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Test()&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;func()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;new&nbsp;global.Test();&nbsp;<span class="comment">//&nbsp;�����Ȃ���&nbsp;OK</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</code>
<br />
</div></div>
<h1><a id="id53" name="id53">�I�u�W�F�N�g�̖�����</a>
</h1><div class="para"><div>
�@TJS2 �ł́A�I�u�W�F�N�g���폜�������ہA�I�u�W�F�N�g��<a id="id54" name="id54" class="targanchor"><dfn>������</dfn></a>�ƃI�u�W�F�N�g�̍폜�A�Ƃ����Q�‚̒i�K�𓥂݂܂��B<br />
�@�I�u�W�F�N�g���������������Ƃ��A finalize ���\�b�h���Ă΂��A���̃I�u�W�F�N�g�͖����ł����Ƃ����}�[�N���‚������܂��B�ȍ~�̂��̃I�u�W�F�N�g�ւ̃A�N�Z�X�͂��ׂĎ��s���A���O�����������悤�ɂȂ��܂��B�I�u�W�F�N�g�������������Ă��邩�ǂ����� <a id="id55" name="id55" class="targanchor"><dfn>isvalid</dfn></a> ���Z�q�Œ��ׂ邱�Ƃ��ł��܂��B<br />
<br />
�@�I�u�W�F�N�g�� <a id="id56" name="id56" class="targanchor"><dfn>invalidate</dfn></a> ���Z�q�Ŗ��������邱�Ƃ��ł��܂��B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Test<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;variable;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Test()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;variable&nbsp;=&nbsp;new&nbsp;AnotherClass();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;finalize&nbsp;���\�b�h�͖��������ꂽ���ɌĂ΂���</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invalidate&nbsp;variable;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;object&nbsp;=&nbsp;new&nbsp;Test();&nbsp;<span class="comment">//&nbsp;�I�u�W�F�N�g���쐬</span><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;(��)<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;invalidate&nbsp;object;&nbsp;<span class="comment">//&nbsp;�I�u�W�F�N�g�𖳌���</span><br />
</code>
<br />
<br />
�@invalidate ���Z�q���p���Ȃ��Ă��A�I�u�W�F�N�g�͕K�v�Ƃ����Ȃ��Ȃ������_�ō폜�����܂��B���̂Ƃ��A�����������Ă��Ȃ����΁A���̎��_�Ŗ����������܂��B<br />
�@TJS2 �ł͂��ƒI�u�W�F�N�g���폜�����邩�̖��m�ȋK�肪�����A�폜�△�����́u���‚ł������肤���v���ƂɂȂ��܂��B���������āA�����������ĂȂ��I�u�W�F�N�g�͍폜���ɖ����������邽�߁A�v���ʎ��_�� finalize ���\�b�h���Ă΂��Ă��܂��”\���������܂��B�����������邽�߂ɂ��A�I�u�W�F�N�g���g���I�������� invalidate ���Z�q�Ŗ��������邱�Ƃ��������߂��܂��B<br />
<br />
<br /><div class="note"><div class="notehead"><span class="noteheadspan">Note</span></div>
�@invalidate ���Z�q�� C++ �� delete ���Z�q�ɋ߂����������܂��B<br />
�@TJS2 �� delete ���Z�q�� C++ �� delete ���Z�q�ƈႢ�A�����o�⃍�[�J���ϐ����폜���邽�߂̉��Z�q�ł��B�I�u�W�F�N�g���̂𖳌����������폜�������͂��܂��񂪁A�����o�⃍�[�J���ϐ����폜�������Ƃɂ��茋�ʓI�ɃI�u�W�F�N�g�̖��������폜�������N�������Ƃ͂����܂��B<br />
</div><br />
</div></div>
<h1><a id="id57" name="id57">�I�u�W�F�N�g�ւ̃A�N�Z�X</a>
</h1><div class="para"><div>
�@�쐬�����I�u�W�F�N�g�̃����o�ϐ��A���\�b�h�A�����o�v���p�e�B�ɂ́A<a id="id58" name="id58" class="targanchor"><dfn>.</dfn></a> (�����o�I��) ���Z�q �܂��� <a id="id59" name="id59" class="targanchor"><dfn>[ ]</dfn></a> (�Ԑڃ����o�I�����Z�q) ���p���ăA�N�Z�X���܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;obj=new&nbsp;MyLayer(window,window.prmaryLayer)<br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.method1();&nbsp;<span class="comment">//&nbsp;���\�b�h�̌Ăяo��&nbsp;&nbsp;obj['method1']()&nbsp;�ł�����</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.num&nbsp;=&nbsp;3;&nbsp;<span class="comment">//&nbsp;�����o�ϐ��֑���&nbsp;&nbsp;obj['num']=3&nbsp;�ł�����</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.prop1++;&nbsp;<span class="comment">//&nbsp;�����o�v���p�e�B�ɃA�N�Z�X&nbsp;&nbsp;obj['prop1']++&nbsp;�ł�����</span><br />
</code>
<br />
</div></div>
<h1><a id="id60" name="id60">�N���[�W��</a>
</h1><div class="para"><div>
�@�쐬�����I�u�W�F�N�g�̃��\�b�h�⃁���o�v���p�e�B�́A���̃����o���ǂ̃I�u�W�F�N�g�̃����o�ł��邩�̏��������������ԂŃI�u�W�F�N�g�ɓo�^�����Ă��܂��B<br />
�@���̂��߁A���\�b�h�⃁���o�v���p�e�B���I�u�W�F�N�g�O�Ɏ����o���āA�������g�p���Ă��A���̃I�u�W�F�N�g�ɑ΂����A�N�Z�X���s�����ƂɂȂ��܂��B���̋@�\���N���[�W���ƌĂт܂��B�܂��A�A�N�Z�X���̃I�u�W�F�N�g��<a id="id61" name="id61" class="targanchor"><dfn>�R���e�L�X�g</dfn></a>�ƌĂт܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;obj&nbsp;=&nbsp;new&nbsp;FooBarClass();&nbsp;<span class="comment">//&nbsp;�I�u�W�F�N�g���쐬</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.method();&nbsp;<span class="comment">//&nbsp;�I�u�W�F�N�g�̃��\�b�h�𕁒ʂɌĂяo��</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;objmethod&nbsp;=&nbsp;obj.method;&nbsp;<span class="comment">//&nbsp;�I�u�W�F�N�g�̃��\�b�h�ւ̎Q�Ƃ�&nbsp;objmethod&nbsp;�ɑ���</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;objmethod();&nbsp;<span class="comment">//&nbsp;objmethod&nbsp;���Ăяo�����Aobj.method()&nbsp;�Ɠ������Aobj&nbsp;�ɑ΂����A�N�Z�X�ƂȂ�</span><br />
</code>
<br />
<br />
�@<a id="id62" name="id62" class="targanchor"><dfn>incontextof</dfn></a> ���Z�q�́A�ǂ̃I�u�W�F�N�g�̃����o�ł��邩�A�̏������ύX���A�C�ӂ̃R���e�L�X�g���Ń��\�b�h�����s���邽�߂̕��@���񋟂��܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;(objmethod&nbsp;incontextof&nbsp;obj2)();&nbsp;<span class="comment">//&nbsp;obj2&nbsp;�ɑ΂��鑀���ɂȂ�</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;(objmethod&nbsp;incontextof&nbsp;this)();&nbsp;<span class="comment">//&nbsp;this&nbsp;�ɑ΂��鑀���ɂȂ�</span></code>
<br />
</div></div>
<h1><a id="id63" name="id63">�p��</a>
</h1><div class="para"><div>
�@�L�[���[�h <a id="id64" name="id64" class="targanchor"><dfn>extends</dfn></a> ���p�����ƁA�N���X���ʂ̃N���X�����p�������邱�Ƃ��ł��܂��B�p���Ƃ́A�p�����̃N���X�̃����o�������p�����Ƃł��B<br />
�@�p�����錳�ƂȂ��N���X�̂��Ƃ�<a id="id65" name="id65" class="targanchor"><dfn>�X�[�p�[�N���X</dfn></a>�A�p�������N���X�̂��Ƃ�<a id="id66" name="id66" class="targanchor"><dfn>�T�u�N���X</dfn></a>�ƌĂт܂��B<br />
�@�ȉ��̂悤�ɂ��ăN���X���錾���܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Class1&nbsp;<span class="comment">//&nbsp;�X�[�p�[�N���X</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Class1()&nbsp;<span class="comment">//&nbsp;Class1&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()&nbsp;<span class="comment">//&nbsp;Class1&nbsp;finalize</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;method1()&nbsp;<span class="comment">//&nbsp;method1</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Class2&nbsp;extends&nbsp;Class1<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Class2()&nbsp;<span class="comment">//&nbsp;Class2&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.Class1();&nbsp;<span class="comment">//&nbsp;Class1&nbsp;�R���X�g���N�^����</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()&nbsp;<span class="comment">//&nbsp;Class2&nbsp;finalize</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.finalize();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;obj&nbsp;=&nbsp;new&nbsp;Class2();&nbsp;<span class="comment">//&nbsp;Class2&nbsp;�I�u�W�F�N�g���쐬</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.method1();&nbsp;<span class="comment">//&nbsp;Class2&nbsp;��&nbsp;Class1&nbsp;��&nbsp;method1&nbsp;���p�����Ă����̂Ŏg�p���邱�Ƃ��ł���</span><br />
</code>
<br />
�@���L�̗��ł́AClass2 �� Class1 ���p�����Ă��܂��BClass2 �� Class1 ����<a id="id67" name="id67" class="targanchor"><dfn>�h��</dfn></a>���Ă����A�Ƃ������܂��B<br />
�@Class2 �̃R���X�g���N�^���ł� Class1 �̃R���X�g���N�^���AClass2 �� finalize �ł� Class1 �� finalize ���Ă��ł��܂��B<em>�T�u�N���X���A�������̃��\�b�h���ŃX�[�p�[�N���X�̊Y�����铯���\�b�h���Ăяo���Ȃ������ꍇ�̓����͖����`</em> ( �Ƃ��������o�[�W�����ł͌Ă񂾂��ǂ����`�F�b�N���Ă��Ȃ� ) �ł��̂ŁA�K���L�q�����悤�ɂ��Ă��������B<br />
<br />
�@�T�u�N���X�����X�[�p�[�N���X���Q�Ƃ��邽�߂ɂ́A���L�̗��̂悤�ɃL�[���[�h <a id="id68" name="id68" class="targanchor"><dfn>super</dfn></a> ���g�p���邱�Ƃ��ł��܂��B���̃L�[���[�h�̓T�u�N���X���ł̂ݎg�p�”\�ŁA�X�[�p�[�N���X���\�����̂ł��B<br />
<br />
�@�p�����s�����Ă����ꍇ�́Anew ���Z�q�ł̃I�u�W�F�N�g�̏������̏����͈ȉ��̒ʂ��ł��B<br />
<br />
<ol><li>�܂����̃I�u�W�F�N�g���쐬������</li><li>���\�b�h�A�v���p�e�B���o�^������ ( �X�[�p�[�N���X�������ɁA�T�u�N���X�Ɍ������� )</li><li>�����o�ϐ����쐬������ ( �X�[�p�[�N���X�������ɁA�T�u�N���X�Ɍ������� )</li><li>�T�u�N���X�̃R���X�g���N�^���Ă΂���</li><li>( �T�u�N���X�̃R���X�g���N�^������ ) �X�[�p�[�N���X�̃R���X�g���N�^���Ă΂���</li></ol></div></div>
<h1><a id="id69" name="id69">���d�p��</a>
</h1><div class="para"><div>
�@extends �̌��ɁA�X�[�p�[�N���X���𕡐��L�q�����ƁA���d�p�����s�킹�邱�Ƃ��ł��܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;SubClass&nbsp;extends&nbsp;ClassA,&nbsp;ClassB<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;SubClass()&nbsp;<span class="comment">//&nbsp;SubClass&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ClassA();&nbsp;<span class="comment">//&nbsp;ClassA&nbsp;�R���X�g���N�^����</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ClassB();&nbsp;<span class="comment">//&nbsp;ClassB&nbsp;�R���X�g���N�^����</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()&nbsp;<span class="comment">//&nbsp;Class2&nbsp;finalize</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global.ClassA.finalize();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global.ClassB.finalize();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
</code>
<br />
�@super �L�[���[�h���g���Ȃ����߁A�����I�ɃN���X���w�肵�Ȃ����΂Ȃ��܂����B���̂悤�� �X�[�p�[�N���X�̃��\�b�h���ĂԂƂ��� global. ���킴�킴�‚��ăN���X�ɃA�N�Z�X�����̂́A�T�u�N���X���ŒP�� ClassA �ƋL�q������ ClassA �̃R���X�g���N�^�̂��Ƃ��w�������ł��B�N���X���̂��̂� global �ɓo�^�����邽�߁Aglobal. ���p���ăN���X�ɃA�N�Z�X���܂��B<br />
<br />
�@���d�p�����s�����Ă����ꍇ�́Anew ���Z�q�ł̃I�u�W�F�N�g�̏������̏����͑��d�p�����s���Ă��Ȃ��Ƃ��̂����Ɠ��������A�X�[�p�[�N���X�̃��\�b�h�A�v���p�e�B�̓o�^�̏��Ԃ́Aextends �L�[���[�h�̌��ɏ��������ɍs�����܂��B�p�����̃N���X�Ԃœ����̃��\�b�h���v���p�e�B���������ꍇ�́A���ɏ������ق����D�悳���܂��B�B���Ă��܂������\�b�h���v���p�e�B�ɂ́Aglobal.ClassA.hiddenMethod() �̂悤�ɖ����I�ɃN���X���������ăA�N�Z�X���鎖���ł��܂��B<br />
</div></div>
<h1><a id="id70" name="id70">�I�[�o�[���C�h</a>
</h1><div class="para"><div>
�@�T�u�N���X�ŃX�[�p�[�N���X�̃��\�b�h�⃁���o�v���p�e�B�Ɠ����̂��̂��錾�����ƁA�X�[�p�[�N���X�̃��\�b�h���B�����Ƃ��ł��܂��B�������I�[�o�[���C�h�ƌĂт܂��B<br />
�@���L�̐����̒��ɂłĂ��� finalize ���\�b�h�́A�X�[�p�[�N���X�� finalize ���\�b�h���I�[�o�[���C�h���Ă��܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Class1&nbsp;<span class="comment">//&nbsp;�X�[�p�[�N���X</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Class1()&nbsp;<span class="comment">//&nbsp;Class1&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()&nbsp;<span class="comment">//&nbsp;Class1&nbsp;finalize</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;method1()&nbsp;<span class="comment">//&nbsp;method1</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(��)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Class2&nbsp;extends&nbsp;Class1<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Class2()&nbsp;<span class="comment">//&nbsp;Class2&nbsp;�R���X�g���N�^</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.Class1();&nbsp;<span class="comment">//&nbsp;Class1&nbsp;�R���X�g���N�^����</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;finalize()&nbsp;<span class="comment">//&nbsp;Class2&nbsp;finalize</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.finalize();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;method1()&nbsp;<span class="comment">//&nbsp;Class1.method1&nbsp;���I�[�o�[���C�h</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(��)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(��)&nbsp;return&nbsp;super.method1();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(��)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;obj&nbsp;=&nbsp;new&nbsp;Class2();&nbsp;<span class="comment">//&nbsp;Class2&nbsp;�I�u�W�F�N�g���쐬</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;obj.method1();&nbsp;<span class="comment">//&nbsp;Class2&nbsp;��&nbsp;method1&nbsp;���Ă΂���</span><br />
</code>
<br />
�@�T�u�N���X�̃��\�b�h���v���p�e�B�ł� super �L�[���[�h���p���ăX�[�p�[�N���X�̃��\�b�h���v���p�e�B�ɃA�N�Z�X���邱�Ƃ��ł��܂��B<br />
<br />
�@�����o�ϐ����I�[�o�[���C�h���邱�Ƃ͂ł��܂����B�����o�ϐ��͈��‚̃I�u�W�F�N�g�ɑ΂��ēo�^�����邽�߁A�T�u�N���X�ƃX�[�p�[�N���X�œ����̃����o�֐���������
�T�u�N���X�̕ϐ����X�[�p�[�N���X�̕ϐ����㏑�����Ă��܂��܂��B<br />
</div></div>
<script type="text/javascript" charset="Shift_JIS" src="documentid.js" ></script>
<script type="text/javascript" charset="Shift_JIS" src="postcontent.js" ></script>
</body>
</html>