1. 编写一个类,包含一个参数为String类型的方法,方法功能为将该字符串翻转后返回。 2. 在主函数中,使用反射机制来创建该类的实例对象,并调用字符串翻转的方法,输出翻转后的字符串。
时间: 2024-03-07 22:48:34 浏览: 24
好的,我来回答你的问题:
首先,根据你的要求,我们需要编写一个类,包含一个参数为String类型的方法,方法功能为将该字符串翻转后返回。代码如下:
```java
public class StringUtils {
public String reverse(String str) {
if (str == null || str.length() == 0) {
return str;
}
char[] arr = str.toCharArray();
int i = 0, j = arr.length - 1;
while (i < j) {
char tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
i++;
j--;
}
return new String(arr);
}
}
```
接下来,我们需要在主函数中,使用反射机制来创建该类的实例对象,并调用字符串翻转的方法,输出翻转后的字符串。代码如下:
```java
import java.lang.reflect.*;
public class Main {
public static void main(String[] args) throws Exception {
// 使用反射机制创建类的实例对象
Class<?> cls = Class.forName("StringUtils");
Object obj = cls.newInstance();
// 调用字符串翻转的方法
Method method = cls.getMethod("reverse", String.class);
String str = "Hello, world!";
String result = (String) method.invoke(obj, str);
// 输出翻转后的字符串
System.out.println(result);
}
}
```
当我们运行该程序时,输出的结果为:
```
!dlrow ,olleH
```
这就是翻转后的字符串。希望这个示例能够帮助你了解如何使用反射机制来创建类的实例对象并调用其中的方法。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)