| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| --> |
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr"> |
| <head> |
| <title>Introduce Local Extension Dialog Box</title> |
| <link rel="stylesheet" href="ide.css" title="Oracle BLAFDoc" type="text/css"/> |
| </head> |
| |
| <body> |
| <p><a id="org.netbeans.modules.refactoring.java.ui.IntroduceLocalExtensionUI" name="org.netbeans.modules.refactoring.java.ui.IntroduceLocalExtensionUI"></a></p> |
| <div id="NBCSH2942"><!-- infolevel="all" infotype="General" --><a id="sthref379" name="sthref379"></a> |
| <h1>Introduce Local Extension Dialog Box</h1> |
| <a name="BEGIN" id="BEGIN"></a> |
| <p>Use to add logic when you cannot modify the original source code. Select a class method in the Source Editor and choose <b>Refactor</b> > <b>Introduce Local Extension</b> to open the Introduce Local Extension dialog box. |
| <object classid="java:org.netbeans.modules.javahelp.BrowserDisplayer"> |
| <param name="content" value="http://www.oracle.com/pls/topic/lookup?ctx=nb8200&id=NBDAG592"> |
| <param name="text" value="<html><u>How?</u></html>"> |
| <param name="textFontSize" value="medium"> |
| <param name="textColor" value="blue"> |
| </object> |
| </p> |
| |
| <table summary="Descriptions of Introduce Local Extension command options." dir="ltr" border="1" width="100%" frame="hsides" rules="groups" cellpadding="3" cellspacing="0"> |
| <col width="35%" /> |
| <col width="*" /> |
| <thead> |
| <tr align="left" valign="top"> |
| <th align="left" valign="bottom" id="r1c1-t13">Element</th> |
| <th align="left" valign="bottom" id="r1c2-t13">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr align="left" valign="top"> |
| <td align="left" id="r2c1-t13" headers="r1c1-t13"> |
| <p>Introduce Local Extension for</p> |
| </td> |
| <td align="left" headers="r2c1-t13 r1c2-t13">(read-only) Displays the name of the source class that needs an additional method but cannot be modified.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r3c1-t13" headers="r1c1-t13"> |
| <p>New Name</p> |
| </td> |
| <td align="left" headers="r3c1-t13 r1c2-t13">Specifies the name of an extension class being created.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r4c1-t13" headers="r1c1-t13"> |
| <p>Project</p> |
| </td> |
| <td align="left" headers="r4c1-t13 r1c2-t13">Specifies the project in which the extension class is created.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r5c1-t13" headers="r1c1-t13"> |
| <p>Location</p> |
| </td> |
| <td align="left" headers="r5c1-t13 r1c2-t13">Specifies the folder where you want to store the created extension class.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r6c1-t13" headers="r1c1-t13"> |
| <p>To Package</p> |
| </td> |
| <td align="left" headers="r6c1-t13 r1c2-t13">Specifies the name of the package where the generated extension class is housed.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r7c1-t13" headers="r1c1-t13"> |
| <p>Type</p> |
| </td> |
| <td align="left" headers="r7c1-t13 r1c2-t13">Provides the following extension class options to use:</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r8c1-t13" headers="r1c1-t13"> |
| <p> Wrapper</p> |
| </td> |
| <td align="left" headers="r8c1-t13 r1c2-t13">Makes the extension class a wrapper of the original class, which keeps the original instance in one of its private fields.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r9c1-t13" headers="r1c1-t13"> |
| <p> Subtype</p> |
| </td> |
| <td align="left" headers="r9c1-t13 r1c2-t13">Makes the extension class a subclass of the original class, which uses the extension keyword.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r10c1-t13" headers="r1c1-t13"> |
| <p>Equality</p> |
| </td> |
| <td align="left" headers="r10c1-t13 r1c2-t13">Provides the following options to set how the equals and <code dir="ltr">hashCode</code> methods are handled:</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r11c1-t13" headers="r1c1-t13"> |
| <p> Delegate</p> |
| </td> |
| <td align="left" headers="r11c1-t13 r1c2-t13">Delegates to the <code dir="ltr">equals</code> and <code dir="ltr">hashCode</code> methods of the original class.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r12c1-t13" headers="r1c1-t13"> |
| <p> Generate</p> |
| </td> |
| <td align="left" headers="r12c1-t13 r1c2-t13">Generates new <code dir="ltr">equals</code> and <code dir="ltr">hashCode</code> methods using the IDE code generator.</td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r13c1-t13" headers="r1c1-t13"> |
| <p> Separate</p> |
| </td> |
| <td align="left" headers="r13c1-t13 r1c2-t13">Separates the <code dir="ltr">equals</code> method into two. A new method is added to check if the original class equals the extension class. |
| <p>The Equality field is disabled when Subtype is chosen in the Type field.</p> |
| </td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r14c1-t13" headers="r1c1-t13"> |
| <p>Replace original usages with the extension</p> |
| </td> |
| <td align="left" headers="r14c1-t13 r1c2-t13">Replaces all usages of the original class with the new local extension class.</td> |
| </tr> |
| </tbody> |
| </table> |
| <br /> |
| <!-- --> |
| <a id="NBCSH2956" name="NBCSH2956"></a> |
| <hr><p><b>Related Topics</b></p> |
| <p><i>Developing Applications with NetBeans IDE</i>, |
| <object classid="java:org.netbeans.modules.javahelp.BrowserDisplayer"> |
| <param name="content" value="http://www.oracle.com/pls/topic/lookup?ctx=nb8200&id=NBDAG547"> |
| <param name="text" value="<html><u>"Refactoring Java Projects"</u></html>"> |
| <param name="textFontSize" value="medium"> |
| <param name="textColor" value="blue"> |
| </object> |
| </p> |
| |
| <!-- --> |
| <!-- Start Footer --> |
| |
| |
| <table summary="" cellspacing="0" cellpadding="0" width="100%"> |
| <tr> |
| <td align="left" width="86%"><a href="legal_notice.htm"> |
| Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements; and to You under the Apache License, Version 2.0.</a> |
| </td> |
| </tr> |
| </table> |
| <!-- --> |
| </body> |
| </html> |