Где в исходном коде ваших классов вы должны поместить конструктор (ы)?
Я использую следующее:
package statement ....
import statements....
public class MyClass {
// instance attributes
private int i;
// class attribute
private static int MAX;
// static methods
public static int getClassCount() {
}
// Constructor!!
public MyClass() { // constructor.
}
// public methods
// protected methods
// private methods
// public static void main
}
Но они могут пойти куда угодно. Я чувствую, что лучше расположить вещи в порядке видимости. Например, у меня есть публичные методы перед частными (поэтому, если я ищу конкретный публичный метод, я знаю, что он находится вверху файла). По той же причине я обычно помещаю конструктор сверху.
Являются ли эти аргументы именами переменных?:
Не обязательно, вы можете назвать их как хотите. Я обычно использую одно и то же имя.
... или передача, частота вращения и скорость называются переменными? ...
Это экземпляры имен переменных
В чем разница между (int startCadence, int startSpeed, int startGear) и передачей, каденцией и скоростью?
Первыми являются имена параметров конструктора, а первыми - имена атрибутов объекта, который он сам.
Возьмите этот другой образец:
public class Person {
private String name; // a person has a name.
public Person( String nameParameter ) {
this.name = nameParameter;
}
public String toString() {
return "My name is : " + this.name;
}
public static void main( String [] args ) {
// creates a new "instance" and assign "Patrick" as its name.
Person one = new Person("Patrick");
System.out.println( one ); // prints "My name is: Patrick"
// each person have its own name.
Person two = new Person("Oscar");
System.out.println( two ); // prints "My name is: Oscar"
}
}
Как вы видите, когда вы передаете значение конструктору, вы используете аргумент, и когда вы видите код конструктора, вы видите имя параметра (который получает этот аргумент), а затем оно присваивается атрибуту экземпляра.