我可以在 java 中为 public 变量和方法参数使用相同的名称吗?
Can I use same name for public variable and method argument in java?
那么,我可以为 class 中的 public 变量和 java 中的方法参数使用相同的名称吗?
例如("number" 声明了两次):
public class Class1 {
public int number;
public static String function1(String id,int number)
{
//do something
}
}
是的,如果您遇到与范围相关的问题,那么您可以使用参考 this
来限定成员
public static String function1(String id, int number)
{
this.number = number;
//here you assign the class member with the value of the parameter
}
是的,你可以。
在方法中声明的int数只能在de方法中访问。
在class中声明为属性的整数在class.
如果要访问方法里面的数属性,必须使用 这个.
示例:
public static String function1(String id,int number)
{
this.number = number;
}
是的,可以,因为这两个变量在不同的范围内。方法参数隐藏了函数作用域的 class 属性。如果您想在方法中访问 class 属性,只需使用 this.number 即可。
是的,您可以在 java 中为 public 变量和方法参数使用相同的名称,但在构造函数
的情况下要小心
你不能这样做
public class Car{
String carname;
int carspeed;
public Car(String carname , int carspeed){
carname = carname;
carspeed = carspeed;
}
}
改为这样做
public class Car{
String carname;
int carspeed;
public Car(String carName , int carSpeed){
carname = carName;
carspeed = carSpeed;
}
}
或者这样做
public class Car{
String carname;
int carspeed;
public Car(String carname , int carspeed){
this.carname = carname;
this.carspeed = carspeed;
}
}
甚至你可以混合它
public class Car{
String carname;
int carspeed;
public Car(String carname , int carSpeed){
this.carname = carname;
carspeed = carSpeed;
}
}
当您在构造函数中为参数使用相同的变量名称和您的 class 属性 名称时,它们会在编译时抛出错误
那么,我可以为 class 中的 public 变量和 java 中的方法参数使用相同的名称吗? 例如("number" 声明了两次):
public class Class1 {
public int number;
public static String function1(String id,int number)
{
//do something
}
}
是的,如果您遇到与范围相关的问题,那么您可以使用参考 this
public static String function1(String id, int number)
{
this.number = number;
//here you assign the class member with the value of the parameter
}
是的,你可以。
在方法中声明的int数只能在de方法中访问。
在class中声明为属性的整数在class.
如果要访问方法里面的数属性,必须使用 这个.
示例:
public static String function1(String id,int number)
{
this.number = number;
}
是的,可以,因为这两个变量在不同的范围内。方法参数隐藏了函数作用域的 class 属性。如果您想在方法中访问 class 属性,只需使用 this.number 即可。
是的,您可以在 java 中为 public 变量和方法参数使用相同的名称,但在构造函数
的情况下要小心你不能这样做
public class Car{
String carname;
int carspeed;
public Car(String carname , int carspeed){
carname = carname;
carspeed = carspeed;
}
}
改为这样做
public class Car{
String carname;
int carspeed;
public Car(String carName , int carSpeed){
carname = carName;
carspeed = carSpeed;
}
}
或者这样做
public class Car{
String carname;
int carspeed;
public Car(String carname , int carspeed){
this.carname = carname;
this.carspeed = carspeed;
}
}
甚至你可以混合它
public class Car{
String carname;
int carspeed;
public Car(String carname , int carSpeed){
this.carname = carname;
carspeed = carSpeed;
}
}
当您在构造函数中为参数使用相同的变量名称和您的 class 属性 名称时,它们会在编译时抛出错误