所以我的Java老师希望我们写一个程序,简单地说"Ben Barcomb 今年 19 岁"就是这样,仅此而已。
他不是像普通人一样使用 System.out.println
,而是希望我们在 Person 类中使用一个实例变量来表示必须private
的全名和年龄,他还想要一个用于全名和变量的 getter 和 setter 方法。这是我拥有的测试器代码,但我有点坚持变量和 getter/setter 方法。
public class PersonTester {
public static void main(String[] args) {
Person p1 = new Person();
p1.setFullname("Bilal Gonen");
p1.setAge(76);
String myFullname = p1.getFullname();
int myAge = p1.getAge();
System.out.println(myFullname + " is " + myAge + " years old.");
}
}
public class Person{
private String myFullname;
private int myAge;
public String getFullname()
{
return myFullname;
}
public int getAge()
{
return myAge;
}
public Person(String aFullname)
{
myFullname = aFullname;
}
public void setFullname()
{
myFullname = aFullname;
}
}
下面是一个 getter 和 setter 的示例。我相信你可以以此为指导。
public class Person
{
private String firstName;
private String lastName;
public void setName(String f, String l)
{
firstName = f;
lastName = l;
}
public String getFirstName()
{
return firstName;
}
}
关于二传手和吸盘手的简短教程。
不为你做功课,但我会在getter和setters上提供一些帮助。下面是一个带有一个变量的示例 person 类,请添加您自己需要的其他变量。
public class Person {
int age;
public void setAge(int age) { // notice how the setter returns void and has an int parameter
this.age = age; // this.age means the age we declared earlier, while age is the age from the parameter
}
public int getAge() { // notice the return type, int? this is because the var we're getting is an int
return age;
}
感谢大家的帮助,以及我自己做的一些研究,我让程序能够正确编译和运行,这里是源代码。再次感谢所有提供帮助的人!
public class PersonTester {
public static void main(String[] args) {
Person p1 = new Person();
p1.setFullname("Ben Barcomb");
p1.setAge(19);
String myFullname = p1.getFullname();
int myAge = p1.getAge();
System.out.println(myFullname + " is " + myAge + " years old.");
}
}
public class Person
{
private String myFullname;
private int myAge;
public String getFullname()
{
return myFullname;
}
public int getAge()
{
return myAge;
}
public void setAge(int newAge)
{
myAge = newAge;
}
public void setFullname(String aFullname)
{
myFullname = aFullname;
}
}
有效代码如下,使用 getter 作为 System.out.println()
的字符串输入
完整的测试代码如下;
public class PersonTester {
public static void main(String[] args) {
Person p1 = new Person();
p1.setMyFullname("Bilal Gonen");
p1.setMyAge(76);
System.out.println(p1.getMyFullname() + " is " + p1.getMyAge() + " years old.");
}
}
class Person {
private String myFullname;
private int myAge;
public String getMyFullname() {
return myFullname;
}
public void setMyFullname(String myFullname) {
this.myFullname = myFullname;
}
public int getMyAge() {
return myAge;
}
public void setMyAge(int myAge) {
this.myAge = myAge;
}
}
输出如下;
Bilal Gonen is 76 years old.
注意:每当类似的项目出现时,它将使您的工作更轻松,在制作POJO类(在本例中为Person类)时,使用eclipse(或任何IDE)的"生成getters/setters"快捷方式(在Eclipse上,您可以将其与Alt + Shift + S一起使用)