使用 Python 自动生成 Java 的 getter-setter 生成器
原文:https://www . geesforgeks . org/automate-getter-setter-generator-for-Java-use-python/
封装定义为将数据封装在一个单元下。封装可以通过将类中的所有变量声明为私有,并在类中编写公共方法来设置和获取变量值来实现。这些公共方法被称为吸气剂和设置剂。实际上,为 Java 中的所有变量编写 getter-setter 是一个相当耗时且重复的过程。 这里给我们提供了一个变量名及其数据类型的列表,我们必须为它们打印所有的 getter-setter 方法,同时遵循基本的 Java 编程约定。 算法:
- 将每个变量的第一个字符改为大写。
- 在每个改变的变量的开头加上“get”,并把它们存储在一个列表中。
- 在每个改变的变量的开头加上“set”,并把它们存储在一个列表中。
- 对于每个变量及其对应的数据类型,使用字符串连接打印 getter 和 setter 方法。
下面是实现。
Python 3
# Function to print getter and setter methods
# for variables according to Java
def print_getter_setter(variables, datatypes):
# List to store getVariable
getters = []
# List to store setVariable
setters = []
# Iterate for every variable
for var in variables:
# Prepend "get" in every variable and change
# the first character to uppercase
getter = "get" + var[0].capitalize() + var[1:]
getters.append(getter)
# Prepend "set" in every variable and change
# the first character to uppercase
setter = "set" + var[0].capitalize() + var[1:]
setters.append(setter)
for i in range(len(variables)):
# Print the getter method
print("public " + datatypes[i] + " " + getters[i] +
"() {\n\treturn " + variables[i] + ";\n}\n")
# Print the setter method
print("public void " + setters[i] + "(" + datatypes[i] +
" " + variables[i] + ") {\n\tthis." + variables[i] +
" = " + variables[i] + ";\n}\n")
# Driver function
if __name__=="__main__":
# The list of variables
variables = ["abc", "empId", "GFG", "x"]
# And the list of the variables's corresponding
# datatypes
datatypes = ["int", "float", "double" , "String"]
print_getter_setter(variables, datatypes)
输出:
public int getAbc() {
return abc;
}
public void setAbc(int abc) {
this.abc = abc;
}
public float getEmpId() {
return empId;
}
public void setEmpId(float empId) {
this.empId = empId;
}
public double getGFG() {
return GFG;
}
public void setGFG(double GFG) {
this.GFG = GFG;
}
public String getX() {
return x;
}
public void setX(String x) {
this.x = x;
}
版权属于:月萌API www.moonapi.com,转载请注明出处