В BlueJay вы используете версию для Windows или Mac?
В любом случае, я пройду версию Mac и надеюсь, что она будет работать.
Создайте новый класс и введите Person в качестве класса.
Откройте окно редактора, щелкнув правой кнопкой мыши по классу и щелкнув Открыть редактор.
Ваш класс должен иметь следующий формат.
/*** Write a description of class Person here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Person
{
// instance variables - replace the example below with your own
private int x;
/**
* Constructor for objects of class Person
*/
public Person()
{
// initialise instance variables
x = 0;
}
/**
* An example of a method - replace this comment with your own
*
* @param y a sample parameter for a method
* @return the sum of x and y
*/
public int sampleMethod(int y)
{
// put your code here
return x + y;
}
}
Первое указанное вами требование:
- Его конструктор получает 3 параметра, две строки, представляющие имя и фамилию, и int, представляющий возраст
Что вы хорошо сделали с кодом
public Person(String firstName, String lastName, int age)
Так что никаких изменений там нет. : D
НЕ
public Person(String first, String last, int age)
[Мы могли бы использовать это вместо этого, но давайте не будем путать себя, кажется, человек хотел, чтобы вы использовали первый]
Хотя мы хотим, чтобы этот класс получил эти 3 параметра, поэтому нам нужно
1) иметь частные переменные для хранения этих значений
2) назначить их в конструкторе.
Оглядываясь назад на то, что BlueJ дал с этими строками
// instance variables - replace the example below with your own
private int x;
/**
* Constructor for objects of class Person
*/
public Person()
{
// initialise instance variables
x = 0;
}
Мы хотим внести в ваши изменения конструктор и дополнительные изменения 1) и 2)
// instance variables - replace the example below with your own
// private int x; replace blueJ sample variable
private String firstName; //not the same as the one given in the constructor
private String lastName; //not the same as the one given in the constructor
private int age; //not the same as the one given in the constructor
/**
* Constructor for objects of class Person
*/
public Person(String firstName, String lastName, int age)
{
// initialise instance variables
//x = 0; replace BlueJ sample with
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
}
Хорошо, просто дыши и смотри. У нас есть два набора каждой переменной !!! Ну, один для класса, а другой - это то, что предоставляется конструктору. Чтобы объяснить все сейчас, просто слишком много строк :(, поэтому вам нужно будет прочитать книгу по Java [только первые несколько глав ... прочитайте ее во время просмотра сезона 1 из 24], большинство книг поставляется с этим Человек пример класса.
Хорошо, так убили первое требование. Давайте посмотрим на второй.
-its метод getName не имеет параметров и возвращает строку в формате «Фамилия, Имя»
Для краткости перейдем к этому разделу
http://java.sun.com/docs/books/tutorial/java/javaOO/methods.html
Это объяснит это намного лучше, чем если бы я это сделал. Хорошо, я дам вам немного времени.
Вы читали это? Нет? Иди прочти это Grr! :( Важно
Хорошо, теперь, когда вы сделали это, для вас будет иметь смысл следующее.
/**
* The getName Method - put in a little description here
*
* @return the String with the format "Lastname, Firstname"
*/
public String getName()
{
// put your code here
// I did and this is called string concatenation in java
// Google it:"string concatenation in java"
return this.lastName + ", " + this.firstName;
}
Итак, я сделал метод, похожий на тот, который сделал BlueJ, и вот так он выглядел. Он получает имена (this.lastName и this.firstName NOT lastName и firstName, которые также будут работать, но не будем путать себя k?)
Полный код в BlueJ
/**
* Write a description of class Person here.
*
* @user208639 (Is that your real name ?)
* @version (a version number or a date)
*/
public class Person
{
// instance variables - replace the example below with your own
// private int x; replace blueJ sample variable
private String firstName;
private String lastName;
private int age;
/**
* Constructor for objects of class Person
*/
public Person(String firstName, String lastName, int age)
{
// initialise instance variables
//x = 0; replace BlueJ sample with
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
}
/**
* The getName Method - put in a little description here
*
* @return the String with the format "Lastname, Firstname"
*/
public String getName()
{
// put your code here
// I did and this is called string concatenation in java
// Google it:"string concatenation in java"
return this.lastName + ", " + this.firstName;
}
/**
* An example of a method - replace this comment with your own
*
* @param y a sample parameter for a method
* @return the sum of x and y
*/
public int sampleMethod(int y)
{
// put your code here
return x + y;
}
}
Вы идете по этому поводу правильно?
Вроде, как бы, что-то вроде ? Если бы вы ничего не знали о кодировании, переменных, типах данных и методах, я бы сказал, что это было честное предположение :) ... но вы действительно должны прочитать книгу по Java Intro.
Правильная программа? Нау ... Эта программа BlueJ странная.
Google для "NetBeans" - бесплатно.
Хорошо, на Западном побережье время завтрака уже далеко.