Yes you can use same name for public variable and method argument in java but be careful in case of constructor
You cannot do like this
public class Car{
String carname;
int carspeed;
public Car(String carname , int carspeed){
carname = carname;
carspeed = carspeed;
}
}
instead do this
public class Car{
String carname;
int carspeed;
public Car(String carName , int carSpeed){
carname = carName;
carspeed = carSpeed;
}
}
or do this
public class Car{
String carname;
int carspeed;
public Car(String carname , int carspeed){
this.carname = carname;
this.carspeed = carspeed;
}
}
even you can mix it
public class Car{
String carname;
int carspeed;
public Car(String carname , int carSpeed){
this.carname = carname;
carspeed = carSpeed;
}
}
when you use same variable name for parameter inside constructor and your class property name then they throw error at compile time