FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
OnJava8-Examples/reflection/ShowMethods.java at master · CSapprenticeWT/OnJava8-Examples · GitHub
CSapprenticeWT
OnJava8-Examples
Repository navigation
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
OnJava8-Examples
/
reflection
/
ShowMethods.java
Copy path
More file actions
More file actions
Latest commit
History
History
History
71 lines (70 loc) · 2.27 KB
Breadcrumbs
OnJava8-Examples
/
reflection
/
ShowMethods.java
Copy path
File metadata and controls
71 lines (70 loc) · 2.27 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// reflection/ShowMethods.java
// (c)2021 MindView LLC: see Copyright.txt
// We make no guarantees that this code is fit for any purpose.
// Visit http://OnJava8.com for more book information.
// Using reflection to show all the methods of a class,
// even if the methods are defined in the base class
// {java ShowMethods ShowMethods}
import
java
.
lang
.
reflect
.*;
import
java
.
util
.
regex
.*;
public
class
ShowMethods
{
private
static
String
usage
=
"usage:
\n
"
+
"ShowMethods qualified.class.name
\n
"
+
"To show all methods in class or:
\n
"
+
"ShowMethods qualified.class.name word
\n
"
+
"To search for methods involving 'word'"
;
private
static
Pattern
p
=
Pattern
.
compile
(
"
\\
w+
\\
."
);
public
static
void
main
(
String
[]
args
) {
if
(
args
.
length
<
1
) {
System
.
out
.
println
(
usage
);
System
.
exit
(
0
);
}
int
lines
=
0
;
try
{
Class
<?>
c
=
Class
.
forName
(
args
[
0
]);
Method
[]
methods
=
c
.
getMethods
();
Constructor
[]
ctors
=
c
.
getConstructors
();
if
(
args
.
length
==
1
) {
for
(
Method
method
:
methods
)
System
.
out
.
println
(
p
.
matcher
(
method
.
toString
()).
replaceAll
(
""
));
for
(
Constructor
ctor
:
ctors
)
System
.
out
.
println
(
p
.
matcher
(
ctor
.
toString
()).
replaceAll
(
""
));
lines
=
methods
.
length
+
ctors
.
length
;
}
else
{
for
(
Method
method
:
methods
)
if
(
method
.
toString
().
contains
(
args
[
1
])) {
System
.
out
.
println
(
p
.
matcher
(
method
.
toString
()).
replaceAll
(
""
));
lines
++;
}
for
(
Constructor
ctor
:
ctors
)
if
(
ctor
.
toString
().
contains
(
args
[
1
])) {
System
.
out
.
println
(
p
.
matcher
(
ctor
.
toString
()).
replaceAll
(
""
));
lines
++;
}
}
}
catch
(
ClassNotFoundException
e
) {
System
.
out
.
println
(
"No such class: "
+
e
);
}
}
}
/* Output:
public static void main(String[])
public final void wait(long,int) throws
InterruptedException
public final native void wait(long) throws
InterruptedException
public final void wait() throws InterruptedException
public boolean equals(Object)
public String toString()
public native int hashCode()
public final native Class getClass()
public final native void notify()
public final native void notifyAll()
public ShowMethods()
*/
Back
|
FazBrowse Home
|
New Git URL