You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ClassClassPath.html 14KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407
  1. <!DOCTYPE HTML>
  2. <!-- NewPage -->
  3. <html lang="en">
  4. <head>
  5. <!-- Generated by javadoc (11) on Sat May 08 11:16:00 JST 2021 -->
  6. <title>ClassClassPath (Javassist API)</title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  8. <meta name="dc.created" content="2021-05-08">
  9. <link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
  10. <link rel="stylesheet" type="text/css" href="../jquery/jquery-ui.css" title="Style">
  11. <script type="text/javascript" src="../script.js"></script>
  12. <script type="text/javascript" src="../jquery/jszip/dist/jszip.min.js"></script>
  13. <script type="text/javascript" src="../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
  14. <!--[if IE]>
  15. <script type="text/javascript" src="../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
  16. <![endif]-->
  17. <script type="text/javascript" src="../jquery/jquery-3.3.1.js"></script>
  18. <script type="text/javascript" src="../jquery/jquery-migrate-3.0.1.js"></script>
  19. <script type="text/javascript" src="../jquery/jquery-ui.js"></script>
  20. </head>
  21. <body>
  22. <script type="text/javascript"><!--
  23. try {
  24. if (location.href.indexOf('is-external=true') == -1) {
  25. parent.document.title="ClassClassPath (Javassist API)";
  26. }
  27. }
  28. catch(err) {
  29. }
  30. //-->
  31. var data = {"i0":10,"i1":10,"i2":10};
  32. var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
  33. var altColor = "altColor";
  34. var rowColor = "rowColor";
  35. var tableTab = "tableTab";
  36. var activeTableTab = "activeTableTab";
  37. var pathtoroot = "../";
  38. var useModuleDirectories = true;
  39. loadScripts(document, 'script');</script>
  40. <noscript>
  41. <div>JavaScript is disabled on your browser.</div>
  42. </noscript>
  43. <header role="banner">
  44. <nav role="navigation">
  45. <div class="fixedNav">
  46. <!-- ========= START OF TOP NAVBAR ======= -->
  47. <div class="topNav"><a id="navbar.top">
  48. <!-- -->
  49. </a>
  50. <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
  51. <a id="navbar.top.firstrow">
  52. <!-- -->
  53. </a>
  54. <ul class="navList" title="Navigation">
  55. <li><a href="../index.html">Overview</a></li>
  56. <li><a href="package-summary.html">Package</a></li>
  57. <li class="navBarCell1Rev">Class</li>
  58. <li><a href="class-use/ClassClassPath.html">Use</a></li>
  59. <li><a href="package-tree.html">Tree</a></li>
  60. <li><a href="../deprecated-list.html">Deprecated</a></li>
  61. <li><a href="../index-all.html">Index</a></li>
  62. </ul>
  63. </div>
  64. <div class="subNav">
  65. <ul class="navList" id="allclasses_navbar_top">
  66. <li><a href="../allclasses.html">All&nbsp;Classes</a></li>
  67. </ul>
  68. <ul class="navListSearch">
  69. <li><label for="search">SEARCH:</label>
  70. <input type="text" id="search" value="search" disabled="disabled">
  71. <input type="reset" id="reset" value="reset" disabled="disabled">
  72. </li>
  73. </ul>
  74. <div>
  75. <script type="text/javascript"><!--
  76. allClassesLink = document.getElementById("allclasses_navbar_top");
  77. if(window==top) {
  78. allClassesLink.style.display = "block";
  79. }
  80. else {
  81. allClassesLink.style.display = "none";
  82. }
  83. //-->
  84. </script>
  85. <noscript>
  86. <div>JavaScript is disabled on your browser.</div>
  87. </noscript>
  88. </div>
  89. <div>
  90. <ul class="subNavList">
  91. <li>Summary:&nbsp;</li>
  92. <li>Nested&nbsp;|&nbsp;</li>
  93. <li>Field&nbsp;|&nbsp;</li>
  94. <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
  95. <li><a href="#method.summary">Method</a></li>
  96. </ul>
  97. <ul class="subNavList">
  98. <li>Detail:&nbsp;</li>
  99. <li>Field&nbsp;|&nbsp;</li>
  100. <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
  101. <li><a href="#method.detail">Method</a></li>
  102. </ul>
  103. </div>
  104. <a id="skip.navbar.top">
  105. <!-- -->
  106. </a></div>
  107. <!-- ========= END OF TOP NAVBAR ========= -->
  108. </div>
  109. <div class="navPadding">&nbsp;</div>
  110. <script type="text/javascript"><!--
  111. $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  112. //-->
  113. </script>
  114. </nav>
  115. </header>
  116. <!-- ======== START OF CLASS DATA ======== -->
  117. <main role="main">
  118. <div class="header">
  119. <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">javassist</a></div>
  120. <h2 title="Class ClassClassPath" class="title">Class ClassClassPath</h2>
  121. </div>
  122. <div class="contentContainer">
  123. <ul class="inheritance">
  124. <li>java.lang.Object</li>
  125. <li>
  126. <ul class="inheritance">
  127. <li>javassist.ClassClassPath</li>
  128. </ul>
  129. </li>
  130. </ul>
  131. <div class="description">
  132. <ul class="blockList">
  133. <li class="blockList">
  134. <dl>
  135. <dt>All Implemented Interfaces:</dt>
  136. <dd><code><a href="ClassPath.html" title="interface in javassist">ClassPath</a></code></dd>
  137. </dl>
  138. <hr>
  139. <pre>public class <span class="typeNameLabel">ClassClassPath</span>
  140. extends java.lang.Object
  141. implements <a href="ClassPath.html" title="interface in javassist">ClassPath</a></pre>
  142. <div class="block">A search-path for obtaining a class file
  143. by <code>getResourceAsStream()</code> in <code>java.lang.Class</code>.
  144. <p>Try adding a <code>ClassClassPath</code> when a program is running
  145. with a user-defined class loader and any class files are not found with
  146. the default <code>ClassPool</code>. For example,
  147. <pre>
  148. ClassPool cp = ClassPool.getDefault();
  149. cp.insertClassPath(new ClassClassPath(this.getClass()));
  150. </pre>
  151. This code snippet permanently adds a <code>ClassClassPath</code>
  152. to the default <code>ClassPool</code>. Note that the default
  153. <code>ClassPool</code> is a singleton. The added
  154. <code>ClassClassPath</code> uses a class object representing
  155. the class including the code snippet above.
  156. <p>Class files in a named module are private to that module.
  157. This method cannot obtain class files in named modules.
  158. </p></div>
  159. <dl>
  160. <dt><span class="seeLabel">See Also:</span></dt>
  161. <dd><a href="ClassPool.html#insertClassPath(javassist.ClassPath)"><code>ClassPool.insertClassPath(ClassPath)</code></a>,
  162. <a href="ClassPool.html#appendClassPath(javassist.ClassPath)"><code>ClassPool.appendClassPath(ClassPath)</code></a>,
  163. <a href="LoaderClassPath.html" title="class in javassist"><code>LoaderClassPath</code></a></dd>
  164. </dl>
  165. </li>
  166. </ul>
  167. </div>
  168. <div class="summary">
  169. <ul class="blockList">
  170. <li class="blockList">
  171. <!-- ======== CONSTRUCTOR SUMMARY ======== -->
  172. <section role="region">
  173. <ul class="blockList">
  174. <li class="blockList"><a id="constructor.summary">
  175. <!-- -->
  176. </a>
  177. <h3>Constructor Summary</h3>
  178. <table class="memberSummary">
  179. <caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
  180. <tr>
  181. <th class="colFirst" scope="col">Constructor</th>
  182. <th class="colLast" scope="col">Description</th>
  183. </tr>
  184. <tr class="altColor">
  185. <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.Class)">ClassClassPath</a></span>&#8203;(java.lang.Class&lt;?&gt;&nbsp;c)</code></th>
  186. <td class="colLast">
  187. <div class="block">Creates a search path.</div>
  188. </td>
  189. </tr>
  190. </table>
  191. </li>
  192. </ul>
  193. </section>
  194. <!-- ========== METHOD SUMMARY =========== -->
  195. <section role="region">
  196. <ul class="blockList">
  197. <li class="blockList"><a id="method.summary">
  198. <!-- -->
  199. </a>
  200. <h3>Method Summary</h3>
  201. <table class="memberSummary">
  202. <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
  203. <tr>
  204. <th class="colFirst" scope="col">Modifier and Type</th>
  205. <th class="colSecond" scope="col">Method</th>
  206. <th class="colLast" scope="col">Description</th>
  207. </tr>
  208. <tr id="i0" class="altColor">
  209. <td class="colFirst"><code>java.net.URL</code></td>
  210. <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#find(java.lang.String)">find</a></span>&#8203;(java.lang.String&nbsp;classname)</code></th>
  211. <td class="colLast">
  212. <div class="block">Obtains the URL of the specified class file.</div>
  213. </td>
  214. </tr>
  215. <tr id="i1" class="rowColor">
  216. <td class="colFirst"><code>java.io.InputStream</code></td>
  217. <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#openClassfile(java.lang.String)">openClassfile</a></span>&#8203;(java.lang.String&nbsp;classname)</code></th>
  218. <td class="colLast">
  219. <div class="block">Obtains a class file by <code>getResourceAsStream()</code>.</div>
  220. </td>
  221. </tr>
  222. <tr id="i2" class="altColor">
  223. <td class="colFirst"><code>java.lang.String</code></td>
  224. <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
  225. <td class="colLast">&nbsp;</td>
  226. </tr>
  227. </table>
  228. <ul class="blockList">
  229. <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
  230. <!-- -->
  231. </a>
  232. <h3>Methods inherited from class&nbsp;java.lang.Object</h3>
  233. <code>equals, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
  234. </ul>
  235. </li>
  236. </ul>
  237. </section>
  238. </li>
  239. </ul>
  240. </div>
  241. <div class="details">
  242. <ul class="blockList">
  243. <li class="blockList">
  244. <!-- ========= CONSTRUCTOR DETAIL ======== -->
  245. <section role="region">
  246. <ul class="blockList">
  247. <li class="blockList"><a id="constructor.detail">
  248. <!-- -->
  249. </a>
  250. <h3>Constructor Detail</h3>
  251. <a id="&lt;init&gt;(java.lang.Class)">
  252. <!-- -->
  253. </a>
  254. <ul class="blockListLast">
  255. <li class="blockList">
  256. <h4>ClassClassPath</h4>
  257. <pre>public&nbsp;ClassClassPath&#8203;(java.lang.Class&lt;?&gt;&nbsp;c)</pre>
  258. <div class="block">Creates a search path.</div>
  259. <dl>
  260. <dt><span class="paramLabel">Parameters:</span></dt>
  261. <dd><code>c</code> - the <code>Class</code> object used to obtain a class
  262. file. <code>getResourceAsStream()</code> is called on
  263. this object.</dd>
  264. </dl>
  265. </li>
  266. </ul>
  267. </li>
  268. </ul>
  269. </section>
  270. <!-- ============ METHOD DETAIL ========== -->
  271. <section role="region">
  272. <ul class="blockList">
  273. <li class="blockList"><a id="method.detail">
  274. <!-- -->
  275. </a>
  276. <h3>Method Detail</h3>
  277. <a id="openClassfile(java.lang.String)">
  278. <!-- -->
  279. </a>
  280. <ul class="blockList">
  281. <li class="blockList">
  282. <h4>openClassfile</h4>
  283. <pre class="methodSignature">public&nbsp;java.io.InputStream&nbsp;openClassfile&#8203;(java.lang.String&nbsp;classname)
  284. throws <a href="NotFoundException.html" title="class in javassist">NotFoundException</a></pre>
  285. <div class="block">Obtains a class file by <code>getResourceAsStream()</code>.</div>
  286. <dl>
  287. <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
  288. <dd><code><a href="ClassPath.html#openClassfile(java.lang.String)">openClassfile</a></code>&nbsp;in interface&nbsp;<code><a href="ClassPath.html" title="interface in javassist">ClassPath</a></code></dd>
  289. <dt><span class="paramLabel">Parameters:</span></dt>
  290. <dd><code>classname</code> - a fully-qualified class name</dd>
  291. <dt><span class="returnLabel">Returns:</span></dt>
  292. <dd>the input stream for reading a class file</dd>
  293. <dt><span class="throwsLabel">Throws:</span></dt>
  294. <dd><code><a href="NotFoundException.html" title="class in javassist">NotFoundException</a></code></dd>
  295. <dt><span class="seeLabel">See Also:</span></dt>
  296. <dd><a href="Translator.html" title="interface in javassist"><code>Translator</code></a></dd>
  297. </dl>
  298. </li>
  299. </ul>
  300. <a id="find(java.lang.String)">
  301. <!-- -->
  302. </a>
  303. <ul class="blockList">
  304. <li class="blockList">
  305. <h4>find</h4>
  306. <pre class="methodSignature">public&nbsp;java.net.URL&nbsp;find&#8203;(java.lang.String&nbsp;classname)</pre>
  307. <div class="block">Obtains the URL of the specified class file.</div>
  308. <dl>
  309. <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
  310. <dd><code><a href="ClassPath.html#find(java.lang.String)">find</a></code>&nbsp;in interface&nbsp;<code><a href="ClassPath.html" title="interface in javassist">ClassPath</a></code></dd>
  311. <dt><span class="paramLabel">Parameters:</span></dt>
  312. <dd><code>classname</code> - a fully-qualified class name.</dd>
  313. <dt><span class="returnLabel">Returns:</span></dt>
  314. <dd>null if the class file could not be found.</dd>
  315. </dl>
  316. </li>
  317. </ul>
  318. <a id="toString()">
  319. <!-- -->
  320. </a>
  321. <ul class="blockListLast">
  322. <li class="blockList">
  323. <h4>toString</h4>
  324. <pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
  325. <dl>
  326. <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
  327. <dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
  328. </dl>
  329. </li>
  330. </ul>
  331. </li>
  332. </ul>
  333. </section>
  334. </li>
  335. </ul>
  336. </div>
  337. </div>
  338. </main>
  339. <!-- ========= END OF CLASS DATA ========= -->
  340. <footer role="contentinfo">
  341. <nav role="navigation">
  342. <!-- ======= START OF BOTTOM NAVBAR ====== -->
  343. <div class="bottomNav"><a id="navbar.bottom">
  344. <!-- -->
  345. </a>
  346. <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
  347. <a id="navbar.bottom.firstrow">
  348. <!-- -->
  349. </a>
  350. <ul class="navList" title="Navigation">
  351. <li><a href="../index.html">Overview</a></li>
  352. <li><a href="package-summary.html">Package</a></li>
  353. <li class="navBarCell1Rev">Class</li>
  354. <li><a href="class-use/ClassClassPath.html">Use</a></li>
  355. <li><a href="package-tree.html">Tree</a></li>
  356. <li><a href="../deprecated-list.html">Deprecated</a></li>
  357. <li><a href="../index-all.html">Index</a></li>
  358. </ul>
  359. </div>
  360. <div class="subNav">
  361. <ul class="navList" id="allclasses_navbar_bottom">
  362. <li><a href="../allclasses.html">All&nbsp;Classes</a></li>
  363. </ul>
  364. <div>
  365. <script type="text/javascript"><!--
  366. allClassesLink = document.getElementById("allclasses_navbar_bottom");
  367. if(window==top) {
  368. allClassesLink.style.display = "block";
  369. }
  370. else {
  371. allClassesLink.style.display = "none";
  372. }
  373. //-->
  374. </script>
  375. <noscript>
  376. <div>JavaScript is disabled on your browser.</div>
  377. </noscript>
  378. </div>
  379. <div>
  380. <ul class="subNavList">
  381. <li>Summary:&nbsp;</li>
  382. <li>Nested&nbsp;|&nbsp;</li>
  383. <li>Field&nbsp;|&nbsp;</li>
  384. <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
  385. <li><a href="#method.summary">Method</a></li>
  386. </ul>
  387. <ul class="subNavList">
  388. <li>Detail:&nbsp;</li>
  389. <li>Field&nbsp;|&nbsp;</li>
  390. <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
  391. <li><a href="#method.detail">Method</a></li>
  392. </ul>
  393. </div>
  394. <a id="skip.navbar.bottom">
  395. <!-- -->
  396. </a></div>
  397. <!-- ======== END OF BOTTOM NAVBAR ======= -->
  398. </nav>
  399. <p class="legalCopy"><small><i>Javassist, a Java-bytecode translator toolkit.<br>
  400. Copyright (C) 1999- Shigeru Chiba. All Rights Reserved.</i></small></p>
  401. </footer>
  402. </body>
  403. </html>