Java 代码生成器
时间: 2023-07-10 17:17:11 浏览: 42
以下是一个简单的 Java 代码生成器示例,可以生成一个包含指定类名和属性的 Java 类文件:
```java
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class JavaCodeGenerator {
public static void main(String[] args) {
String className = "Person";
String[] properties = {"name", "age", "gender"};
generateJavaClass(className, properties);
}
public static void generateJavaClass(String className, String[] properties) {
try {
File file = new File(className + ".java");
FileWriter writer = new FileWriter(file);
// 写入类名和包名
writer.write("package com.example;\n\n");
writer.write("public class " + className + " {\n\n");
// 写入属性
for (String property : properties) {
writer.write(" private String " + property + ";\n");
}
writer.write("\n");
// 写入构造方法
writer.write(" public " + className + "() {\n");
writer.write(" // TODO: 构造方法\n");
writer.write(" }\n\n");
// 写入 getter 和 setter 方法
for (String property : properties) {
writer.write(" public String get" + capitalizeFirstLetter(property) + "() {\n");
writer.write(" return " + property + ";\n");
writer.write(" }\n\n");
writer.write(" public void set" + capitalizeFirstLetter(property) + "(String " + property + ") {\n");
writer.write(" this." + property + " = " + property + ";\n");
writer.write(" }\n\n");
}
writer.write("}\n");
writer.close();
System.out.println("Java 类文件已生成:" + file.getAbsolutePath());
} catch (IOException e) {
System.out.println("生成 Java 类文件失败:" + e.getMessage());
}
}
public static String capitalizeFirstLetter(String str) {
return str.substring(0, 1).toUpperCase() + str.substring(1);
}
}
```
这个程序会生成一个名为 `Person.java` 的 Java 类文件,其中包含 `name`、`age` 和 `gender` 三个属性,以及构造方法和 getter/setter 方法。
你可以根据需要修改属性和方法的名称和类型,来生成符合你需求的 Java 类文件。