class Person {
private String name;
private int age;
Person() {
this.name = "";
this.age = 0;
}
Person(String name, int age) {
this.name = name;
this.age = age;
}
void getName(String name) {
}
}
我是Java新手,正在练习制作对象。在上面的代码中,我创建了一个带有两个重载构造函数的Person对象。我希望那些是正确的。我尝试制作一个方法,但没有指定返回void并得到一个错误。对象内的方法总是需要返回类型吗?当我没有将它指定为void时,我不确定IDE为什么会给我一个错误。
*编辑我意识到我从未真正创建过Person对象,只有Person类。
答案 0 :(得分:2)
所有方法都需要返回类型或void
作为其签名的一部分。 void
表示您没有返回任何内容,或者如果使用了return
关键字,则后面没有任何值。
构造函数是特殊的 - 它们没有使用返回类型定义,因为它们总是返回它们实例化的对象,并且它们的名称总是与类名相同。
答案 1 :(得分:1)
public class Person {
private String name;
private int age;
public Person()
{
this.name = "";
this.age = 0;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public static Person GetObect()
{
return new Person("Steven N",22);
}
public void ShowDetails()
{
System.Out.Println("Name "+this.name+" and age is "+this.age);
}
}
class TestObject
{
public static void main(string arg[])
{
Person ob=Person.GetObject();
ob.ShowDetails();
}
}
希望这会对你有所帮助。
答案 2 :(得分:0)
你创建的person对象在哪里,只有2个构造函数,一个方法和一个类Person
。对象是这样创建的Person p =new Person();
所有方法都必须具有返回类型,例如void
或int
或String
或任何扩展Object
类但constructor do not have any return type的类型
由于您是java新手,请参阅此link以了解创建对象的不同方法