⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 toolsetguide.html

📁 图象处理
💻 HTML
📖 第 1 页 / 共 4 页
字号:
            </p><p>                &#31532;&#20108;&#20214;&#20107;&#26159;&#20026;hbm2java&#24314;&#31435;&#19979;&#38754;&#26684;&#24335;&#30340;&#37197;&#32622;&#25991;&#20214;&#65306;            </p><pre class="programlisting">&lt;codegen&gt;    &lt;generate renderer="net.sf.hibernate.tool.hbm2java.BasicRenderer"/&gt;    &lt;generate suffix="Finder" renderer="net.sf.hibernate.tool.hbm2java.FinderRenderer"/&gt;&lt;/codegen&gt;</pre><p>                 &#28982;&#21518;&#29992;&#21442;&#25968;&#21435;&#35843;&#29992;&#65306;<tt class="literal">hbm2java --config=xxx.xml</tt>&#65292;<tt class="literal">xxx.xml</tt>&#23601;&#26159;&#20320;&#21018;&#25165;&#21019;&#24314;&#30340;&#37197;&#32622;&#25991;&#20214;&#30340;&#21517;&#23383;&#12290;            </p><p>                 &#26377;&#20010;&#21487;&#36873;&#30340;&#21442;&#25968;,&#20316;&#20026;&#19968;&#20010;&#22312;class&#32423;&#21035;&#30340;meta&#26631;&#31614;&#65292;&#26684;&#24335;&#22914;&#19979;&#65306;            </p><pre class="programlisting">&lt;meta attribute="session-method"&gt;    com.whatever.SessionTable.getSessionTable().getSession();&lt;/meta&gt;</pre><p>                 &#20182;&#26159;&#29992;&#26469;&#31649;&#29702;&#20320;&#22914;&#20309;&#20351;&#29992;<span class="emphasis"><em>Thread Local Session</em></span>&#27169;&#24335;(&#22312;Hibernate &#32593;&#31449;&#30340;Design Patterns&#37096;&#20998;&#26377;&#25991;&#26723;&#65289;&#24471;&#21040;session&#30340;&#12290;            </p></div><div class="sect2" lang="zh-cn"><div class="titlepage"><div><div><h3 class="title"><a name="toolsetguide-s2-4"></a>15.2.4.&nbsp;&#22522;&#20110;Velocity&#30340;&#28210;&#26579;&#22120;/&#29983;&#25104;&#22120;(Velocity based renderer/generator)</h3></div></div><div></div></div><p>      &#30446;&#21069;&#21487;&#20197;&#20351;&#29992;velocity&#20316;&#20026;&#28210;&#26579;&#26426;&#21046;&#30340;&#19968;&#20010;&#26367;&#20195;&#26041;&#26696;&#12290;&#19979;&#38754;&#30340;config.xml&#25991;&#20214;&#26174;&#31034;&#20102;&#22914;&#26524;&#37197;&#32622;hbm2java&#26469;&#20351;&#29992;velocity&#28210;&#26579;&#22120;&#12290;      </p><pre class="programlisting">    &lt;codegen&gt;     &lt;generate renderer="net.sf.hibernate.tool.hbm2java.VelocityRenderer"&gt;      &lt;param name="template"&gt;pojo.vm&lt;/param&gt;     &lt;/generate&gt;    &lt;/codegen&gt;</pre><p>        &#21517;&#20026;<tt class="literal">template</tt>&#30340;&#21442;&#25968;&#26159;&#25351;&#21521;&#20320;&#24076;&#26395;&#20320;&#20351;&#29992;velocity macro&#25991;&#20214;&#30340;&#36164;&#28304;&#36335;&#24452;&#12290;&#36825;&#20010;&#25991;&#20214;&#24517;&#39035;&#22312;hbm2java&#30340;classpath&#20013;&#12290;&#25152;&#20197;&#35201;&#35760;&#20303;&#25226;pojo.vm&#25152;&#22312;&#30340;&#36335;&#24452;&#21152;&#20837;&#21040;&#20320;ant&#20219;&#21153;&#25110;&#32773;shell&#33050;&#26412;&#20013;&#21435;&#12290;&#65288;&#40664;&#35748;&#30340;&#20301;&#32622;&#26159;<tt class="literal">./tools/src/velocity</tt>)      </p><p>        &#27880;&#24847;&#65292;&#24403;&#21069;&#30340;<tt class="literal">pojo.vm</tt>&#21482;&#29983;&#25104;java beans&#26368;&#22522;&#26412;&#30340;&#37096;&#20998;&#12290;&#20182;&#36824;&#27809;&#26377;&#40664;&#35748;&#30340;&#28210;&#26579;&#22120;&#37027;&#20040;&#23436;&#25972;&#65292;&#20063;&#27809;&#26377;&#37027;&#20040;&#22810;&#21151;&#33021;&#8212;&#8212;&#29305;&#21035;&#26159;&#22823;&#37096;&#20998;<tt class="literal">meta</tt>&#26631;&#31614;&#36824;&#19981;&#25903;&#25345;&#12290;      </p></div></div><div class="sect1" lang="zh-cn"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="toolsetguide-s3"></a>15.3.&nbsp;&#26144;&#23556;&#25991;&#20214;&#29983;&#25104;&#22120;&#65288;Mapping File Generation&#65289;</h2></div></div><div></div></div><p>            &#26144;&#23556;&#25991;&#20214;&#30340;&#39592;&#26550;&#21487;&#20197;&#20174;&#32534;&#35793;&#36807;&#30340;&#25345;&#20037;&#21270;&#31867;&#20013;&#20351;&#29992;<tt class="literal">MapGenerator</tt>&#24037;&#20855;&#29983;&#25104;&#12290;&#36825;&#24037;&#20855;&#26159;Hibernate Extensions&#21457;&#34892;&#21253;&#30340;&#19968;&#37096;&#20998;&#12290;        </p><p>            Hibernate&#26144;&#23556;&#29983;&#25104;&#22120;&#25552;&#20379;&#20102;&#20174;&#32534;&#35793;&#36807;&#30340;&#31867;&#20013;&#20135;&#29983;&#26144;&#23556;&#30340;&#26426;&#21046;&#12290;&#20182;&#20351;&#29992;Java&#21453;&#23556;&#26469;&#26597;&#25214;<span class="emphasis"><em>&#23646;&#24615;(properties)</em></span>&#65292;&#28982;&#21518;&#20351;&#29992;&#21551;&#21457;&#24335;&#31639;&#27861;&#26469;&#20174;&#23646;&#24615;&#31867;&#22411;&#29468;&#27979;&#21512;&#36866;&#30340;&#26144;&#23556;&#12290;&#29983;&#25104;&#20986;&#26469;&#30340;&#26144;&#23556;&#25991;&#20214;&#20043;&#24212;&#35813;&#30475;&#20316;&#26159;&#21518;&#32493;&#24037;&#20316;&#30340;&#36215;&#28857;&#12290;&#27809;&#26377;&#21150;&#27861;&#22312;&#27809;&#26377;&#29992;&#25143;&#20462;&#27491;&#30340;&#24773;&#20917;&#19979;&#29983;&#25104;&#23436;&#25972;&#30340;Hibernate&#26144;&#23556;&#12290;&#20294;&#26159;&#65292;&#36825;&#20010;&#24037;&#20855;&#36824;&#26159;&#26367;&#20320;&#20570;&#20102;&#24456;&#22810;&#38750;&#24120;&#29712;&#30862;&#21644;&#40635;&#28902;&#30340;&#24037;&#20316;&#12290;        </p><p>            &#31867;&#19968;&#20010;&#19968;&#20010;&#22320;&#21152;&#20837;&#21040;&#26144;&#23556;&#21435;&#12290;&#22914;&#26524;&#24037;&#20855;&#35748;&#20026;&#26576;&#20010;&#31867;&#19981;&#26159;<span class="emphasis"><em>Hibernate&#21487;&#25345;&#20037;&#21270;&#65288; persistable&#65289;</em></span>&#30340;&#65292;&#23601;&#20250;&#25226;&#36825;&#20123;&#31867;&#21076;&#38500;&#12290;        </p><p>            &#21028;&#26029;&#26159;&#21542;&#26159;<span class="emphasis"><em>Hibernate&#21487;&#25345;&#20037;&#21270;&#65288; persistable&#65289;</em></span>&#30340;&#21407;&#21017;&#26159;&#65306;        </p><div class="itemizedlist"><ul type="disc" compact><li><p>&#24517;&#23450;&#19981;&#26159;&#19968;&#20010;&#21407;&#22987;&#31867;&#22411;</p></li><li><p>&#24517;&#23450;&#19981;&#26159;&#19968;&#20010;&#25968;&#32452;</p></li><li><p>&#24517;&#23450;&#19981;&#26159;&#19968;&#20010;&#25509;&#21475;</p></li><li><p>&#24517;&#23450;&#19981;&#26159;&#19968;&#20010;&#20869;&#37096;&#31867;</p></li><li><p>&#24517;&#23450;&#26377;&#19968;&#20010;&#40664;&#35748;&#30340;&#26080;&#21442;&#25968;&#30340;&#26500;&#36896;&#26041;&#27861;&#12290;</p></li></ul></div><p>            &#27880;&#24847;&#65292;&#25509;&#21475;&#21644;&#20869;&#37096;&#31867;&#23454;&#38469;&#19978;&#26159;&#21487;&#20197;&#36890;&#36807;Hibernate&#25345;&#20037;&#21270;&#30340;&#65292;&#20294;&#26159;&#19968;&#33324;&#26469;&#35828;&#29992;&#25143;&#19981;&#20250;&#20351;&#29992;&#12290;        </p><p>            &#23545;&#24050;&#32463;&#21457;&#29616;&#30340;&#31867;&#65292;<tt class="literal">MapGenerator</tt>&#20250;&#37325;&#22797;&#22238;&#28335;&#21040;&#36229;&#31867;&#38142;&#26465;&#19978;&#21435;&#65292;&#20197;&#23613;&#21487;&#33021;&#30340;&#25226;Hibernate&#21487;&#25345;&#20037;&#21270;&#30340;&#36229;&#31867;&#21152;&#20837;&#21040;&#23545;&#21516;&#19968;&#20010;&#25968;&#25454;&#24211;&#34920;&#30340;&#26144;&#23556;&#21435;&#12290;&#22914;&#26524;&#22238;&#28335;&#36807;&#31243;&#20013;&#26576;&#20010;&#31867;&#20986;&#29616;&#20102;&#26377;&#20010;&#23646;&#24615;&#22312;&#19979;&#21015;<span class="emphasis"><em>&#22791;&#36873;UID&#21517;&#23383;&#65288;candidate UID names&#65289;</em></span>&#21517;&#21333;&#20013;&#65292;&#22238;&#28335;&#23601;&#20250;&#20572;&#27490;&#12290;        </p><p>            &#40664;&#35748;&#30340;&#22791;&#36873;UID&#23646;&#24615;&#21517;&#26377;&#65306;<tt class="literal">uid</tt>, <tt class="literal">UID</tt>,            <tt class="literal">id</tt>, <tt class="literal">ID</tt>, <tt class="literal">key</tt>, <tt class="literal">KEY</tt>,            <tt class="literal">pk</tt>, <tt class="literal">PK</tt>&#12290;        </p><p>            &#22914;&#26524;&#31867;&#20013;&#26377;&#20004;&#20010;&#26041;&#27861;&#65292;&#19968;&#20010;&#26159;setter,&#19968;&#20010;&#26159;getter&#65292;&#24182;&#19988;setter&#30340;&#21333;&#21442;&#25968;&#30340;&#23646;&#24615;&#21644;getter&#30340;&#26080;&#21442;&#25968;&#36820;&#22238;&#20540;&#24471;&#31867;&#22411;&#30456;&#21516;&#65292;&#24182;&#19988;setter&#36820;&#22238;<tt class="literal">void</tt>,&#23601;&#35748;&#20026;&#21457;&#29616;&#20102;&#19968;&#20010;&#23646;&#24615;&#12290;&#24182;&#19988;&#65292;setter&#30340;&#21517;&#23383;&#24517;&#39035;&#20197;<tt class="literal">set</tt>&#23383;&#31526;&#20018;&#24320;&#22987;&#65292;getter&#30340;&#21517;&#23383;&#24517;&#39035;&#20197;<tt class="literal">get</tt>&#24320;&#22987;&#65292;&#25110;&#32773;&#20197;<tt class="literal">is</tt>&#24320;&#22987;&#24182;&#19988;&#23646;&#24615;&#31867;&#22411;&#26159;boolean&#12290;&#22312;&#19978;&#38754;&#30340;&#24773;&#20917;&#21457;&#29983;&#26102;&#65292;get&#21644;set&#20043;&#21518;&#30340;&#21517;&#23383;&#36824;&#24517;&#39035;&#21305;&#37197;&#12290;&#36825;&#20010;&#21305;&#37197;&#23601;&#26159;&#23646;&#24615;&#30340;&#21517;&#23383;&#65292;&#28982;&#21518;&#22914;&#26524;&#31532;&#20108;&#20010;&#23383;&#27597;&#26159;&#23567;&#20889;&#30340;&#35805;&#65292;&#20250;&#25226;&#20854;&#39318;&#23383;&#27597;&#21464;&#25104;&#23567;&#20889;&#12290;        </p><p>            &#29992;&#26469;&#20915;&#23450;&#27599;&#20010;&#23646;&#24615;&#30340;&#25968;&#25454;&#24211;&#31867;&#22411;&#30340;&#35268;&#21017;&#22914;&#19979;&#65306;        </p><div class="orderedlist"><ol type="1" compact><li><p>                    &#22914;&#26524;Java&#31867;&#22411;&#26159;<tt class="literal">Hibernate.basic()</tt>&#65292;&#21017;&#23646;&#24615;&#26159;&#35813;&#31867;&#22411;&#30340;&#19968;&#20010;&#26222;&#36890;&#23383;&#27573;&#12290;                </p></li><li><p>                    &#23545;&#20110;<tt class="literal">hibernate.type.Type</tt>&#29305;&#23450;&#31867;&#22411;&#21644;<tt class="literal">PersistentEnum</tt>&#26469;&#35828;&#65292;&#20063;&#20250;&#20351;&#29992;&#19968;&#20010;&#26222;&#36890;&#23383;&#27573;&#12290;                </p></li><li><p>                    &#22914;&#26524;&#23646;&#24615;&#31867;&#22411;&#26159;&#19968;&#20010;&#25968;&#32452;&#65292;&#37027;&#20040;&#20250;&#20351;&#29992;&#19968;&#20010;Hibernate&#25968;&#32452;,&#24182;&#19988;<tt class="literal">MapGenerator</tt>&#35797;&#22270;&#21453;&#26144;&#25968;&#32452;&#20803;&#32032;&#30340;&#31867;&#22411;&#12290;&#65288;attempts to reflect on the array element type.&#65289;                </p></li><li><p>                    &#22914;&#26524;&#23646;&#24615;&#26159;<tt class="literal">java.util.List</tt>,<tt class="literal">java.util.Map</tt>&#25110;&#32773;<tt class="literal">java.util.Set</tt>&#65292;&#20250;&#20351;&#29992;&#23545;&#24212;&#30340;Hibernate&#31867;&#22411;&#65292;&#20294;&#26159;<tt class="literal">MapGenerator</tt>&#19981;&#33021;&#23545;&#36825;&#20123;&#31867;&#22411;&#36827;&#34892;&#36827;&#19968;&#27493;&#22788;&#29702;&#20102;&#12290;                </p></li><li><p>                    &#22914;&#26524;&#23646;&#24615;&#30340;&#31867;&#22411;&#19981;&#26159;&#19978;&#38754;&#20219;&#20309;&#19968;&#31181;&#65292;<tt class="literal">MapGeneraotr</tt>&#25226;&#20915;&#23450;&#25968;&#25454;&#24211;&#31867;&#22411;&#30340;&#27493;&#39588;&#30041;&#24453;&#25152;&#26377;&#30340;&#31867;&#37117;&#34987;&#22788;&#29702;&#20043;&#21518;&#20877;&#26469;&#20570;&#12290;&#22312;&#37027;&#26102;&#20505;&#65292;&#22914;&#26524;&#31867;&#22312;&#19978;&#38754;&#25551;&#36848;&#36807;&#30340;&#36229;&#31867;&#25628;&#32034;&#36807;&#31243;&#20013;&#34987;&#21457;&#29616;&#20102;&#65292;&#36825;&#20010;&#23646;&#24615;&#20250;&#34987;&#35748;&#20026;&#26159;&#19968;&#20010;<tt class="literal">many-to-one</tt>&#30340;&#20851;&#32852;&#12290;&#22914;&#26524;&#31867;&#26377;&#20154;&#21644;&#23646;&#24615;&#65292;&#23427;&#21017;&#26159;&#19968;&#20010;<tt class="literal">&#32452;&#20214;(component)</tt>&#12290;&#21542;&#21017;&#23427;&#23601;&#26159;&#21487;&#24207;&#21015;&#21270;&#30340;&#65288;serializable&#65289;&#65292;&#25110;&#32773;&#19981;&#26159;&#21487;&#25345;&#20037;&#21270;&#30340;&#12290;                </p></li></ol></div><div class="sect2" lang="zh-cn"><div class="titlepage"><div><div><h3 class="title"><a name="toolsetguide-s3-1"></a>15.3.1.&nbsp;&#36816;&#34892;&#27492;&#24037;&#20855;</h3></div></div><div></div></div><p>                &#36825;&#20010;&#24037;&#20855;&#20250;&#25226;XML&#26144;&#23556;&#20889;&#20837;&#21040;&#26631;&#20934;&#36755;&#20986;&#25110;&#32773;/&#24182;&#19988;&#21040;&#19968;&#20010;&#25991;&#20214;&#20013;&#21435;&#12290;            </p><p>                &#22312;&#35843;&#29992;&#36825;&#20010;&#24037;&#20855;&#30340;&#26102;&#20505;&#65292;&#20320;&#24517;&#39035;&#25226;&#20320;&#32534;&#35793;&#36807;&#30340;&#31867;&#25918;&#21040;classpath&#20013;&#21435;&#12290;            </p><p>                <tt class="literal">java -cp </tt><span class="emphasis"><em>hibernate_and_your_class_classpaths</em></span>                <tt class="literal">net.sf.hibernate.tool.class2hbm.MapGenerator</tt> <span class="emphasis"><em>options and                classnames</em></span>            </p><p>                &#26377;&#20004;&#31181;&#25805;&#20316;&#27169;&#24335;&#65306;&#21629;&#20196;&#34892;&#25110;&#32773;&#20132;&#20114;&#24335;&#12290;            </p><p>                &#20132;&#20114;&#24335;&#27169;&#24335;&#24403;&#20320;&#20351;&#29992;&#19968;&#20010;&#24799;&#19968;&#30340;&#21629;&#20196;&#34892;&#21442;&#25968;<tt class="literal">--interact</tt>&#30340;&#26102;&#20505;&#21551;&#21160;&#12290;&#36825;&#20010;&#27169;&#24335;&#25552;&#20379;&#19968;&#20010;&#21629;&#20196;&#25511;&#21046;&#21488;&#12290;&#20320;&#21487;&#20197;&#29992;<tt class="literal">uid=XXX</tt>&#21629;&#20196;&#35774;&#32622;&#27599;&#20010;&#31867;&#30340;UID&#23646;&#24615;&#30340;&#21517;&#23383;&#65292;<tt class="literal">XXX</tt>&#23601;&#26159;UID&#23646;&#24615;&#21517;&#12290;&#20854;&#20182;&#21487;&#29992;&#30340;&#21629;&#20196;&#23601;&#26159;&#31867;&#21517;&#30340;&#20840;&#38480;&#23450;&#21517;&#65292;&#25110;&#32773;&#8220;done&#8221;&#21629;&#20196;&#29992;&#26469;&#36755;&#20986;XML,&#24182;&#19988;&#32467;&#26463;&#12290;            </p><p>                &#22312;&#21629;&#20196;&#34892;&#27169;&#24335;&#19979;&#65292;&#19979;&#38754;&#30340;&#21442;&#25968;&#36873;&#39033;&#21644;&#25152;&#38656;&#22788;&#29702;&#30340;&#31867;&#30340;&#20840;&#38480;&#23450;&#21517;&#21487;&#20197;&#30456;&#20114;&#38388;&#38548;&#20351;&#29992;&#12290;&#22823;&#22810;&#25968;&#36873;&#39033;&#20250;&#20351;&#29992;&#22810;&#27425;&#65292;&#27599;&#20010;&#21482;&#24433;&#21709;&#20854;&#21518;&#20986;&#29616;&#30340;&#31867;&#12290;            </p><div class="table"><a name="d0e10053"></a><p class="title"><b>&#34920;&nbsp;15.7.&nbsp;MapGenerator&#21629;&#20196;&#34892;&#36873;&#39033;</b></p><table summary="MapGenerator&#21629;&#20196;&#34892;&#36873;&#39033;" border="1"><colgroup><col><col></colgroup><thead><tr><th>&#36873;&#39033;</th><th>&#35828;&#26126;</th></tr></thead><tbody><tr><td><tt class="literal">--quiet</tt></td><td>&#19981;&#25226;O-R &#26144;&#23556;&#36755;&#20986;&#21040;stdout</td></tr><tr><td><tt class="literal">--setUID=uid</tt></td><td>&#35774;&#32622;&#22791;&#36873;UID&#21517;&#21333;</td></tr><tr><td><tt class="literal">--addUID=uid</tt></td><td>&#22312;&#22791;&#36873;UID&#21517;&#21333;&#21069;&#38754;&#22686;&#21152;&#19968;&#20010;&#26032;&#30340;uid</td></tr><tr><td><tt class="literal">--select=</tt><span class="emphasis"><em>mode</em></span></td><td>&#23545;&#21518;&#38754;&#30340;classes&#20351;&#29992;select&#36873;&#25321;&#30340;<span class="emphasis"><em>&#27169;&#24335;(mode)</em></span>(&#27604;&#22914;,                            <span class="emphasis"><em>distinct</em></span> &#25110;&#32773;<span class="emphasis"><em>all</em></span>)</td></tr><tr><td><tt class="literal">--depth=&lt;small-int&gt;</tt></td><td>&#38480;&#21046;&#21518;&#38754;&#30340;&#31867;&#30340;&#32452;&#20214;&#25968;&#25454;&#36882;&#24402;&#23618;&#25968;</td></tr><tr><td><tt class="literal">--output=my_mapping.xml</tt></td><td>&#25226;O-R &#26144;&#23556;&#36755;&#20986;&#21040;&#19968;&#20010;&#25991;&#20214;</td></tr><tr><td><span class="emphasis"><em>full.class.Name</em></span></td><td>&#25226;&#36825;&#20010;&#31867;&#21152;&#20837;&#21040;&#26144;&#23556;&#20013;</td></tr><tr><td><tt class="literal">--abstract=</tt><span class="emphasis"><em>full.class.Name</em></span></td><td>&#21442;&#35265;&#19979;&#38754;&#30340;&#35828;&#26126;</td></tr></tbody></table></div><p>                abstract&#24320;&#20851;&#25351;&#23450;&#26412;&#24037;&#20855;&#24573;&#30053;&#29305;&#23450;&#30340;&#36229;&#31867;,&#25152;&#20197;&#23427;&#30340;&#32487;&#25215;&#25968;&#19978;&#30340;&#31867;&#19981;&#20250;&#34987;&#26144;&#23556;&#21040;&#19968;&#20010;&#22823;&#34920;&#20013;&#21435;&#12290;&#27604;&#22914;&#65292;&#25105;&#20204;&#26469;&#30475;&#19979;&#38754;&#30340;&#31867;&#32487;&#25215;&#26641;&#65306;            </p><p>                <tt class="literal">Animal--&gt;Mammal--&gt;Human</tt>            </p><p>                <tt class="literal">Animal--&gt;Mammal--&gt;Marsupial--&gt;Kangaroo</tt>            </p><p>                &#22914;&#26524;<span class="emphasis"><em>&#19981;</em></span>&#20351;&#29992;<tt class="literal">--abstract</tt>&#24320;&#20851;&#65292;<tt class="literal">Animal</tt>&#30340;&#25152;&#26377;&#23376;&#31867;&#37117;&#20250;&#34987;&#25918;&#21040;&#19968;&#20010;&#24040;&#22823;&#30340;&#34920;&#20013;&#21435;&#65292;&#21253;&#21547;&#25152;&#26377;&#31867;&#30340;&#25152;&#26377;&#23646;&#24615;&#65292;&#36824;&#26377;&#19968;&#20010;&#29992;&#20110;&#20998;&#36776;&#23376;&#31867;&#30340;&#23383;&#27573;&#12290;&#22914;&#26524;<tt class="literal">Mammal</tt>&#34987;&#26631;&#35760;&#25104;<tt class="literal">abstract</tt>&#65292;<tt class="literal">Human</tt>&#21644;<tt class="literal">Marsupial</tt>&#20250;&#34987;&#26144;&#23556;&#21040;&#19981;&#21516;&#30340;<tt class="literal">&lt;class&gt;</tt>&#22768;&#26126;&#65292;&#24182;&#19988;&#20250;&#26377;&#21508;&#33258;&#21333;&#29420;&#30340;&#34920;&#12290;<tt class="literal">Kangaroo</tt>&#20173;&#28982;&#20250;&#34987;&#35748;&#20026;&#26159;<tt class="literal">Marsupial</tt>&#30340;&#23376;&#31867;&#65292;&#38500;&#38750;<tt class="literal">Marsupial</tt>&#20063;&#26631;&#35760;&#20026;<tt class="literal">anstract</tt>&#30340;&#12290;            </p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="performance.html">&#19978;&#19968;&#39029;</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="index.html">&#19978;&#19968;&#32423;</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="example-parentchild.html">&#19979;&#19968;&#39029;</a></td></tr><tr><td width="40%" align="left" valign="top">&#31532;&nbsp;14&nbsp;&#31456;&nbsp;&#24615;&#33021;&#25552;&#21319;&#65288;Improving performance&#65289;&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">&#36215;&#22987;&#39029;</a></td><td width="40%" align="right" valign="top">&nbsp;&#31532;&nbsp;16&nbsp;&#31456;&nbsp;&#31034;&#20363;&#65306;&#29238;&#23376;&#20851;&#31995;(Parent Child Relationships)</td></tr></table></div></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -