这个java教程错了吗?

Fry*_*dra -2 java object

我正在尝试学习java中的对象和类,在线教程给我的代码我不能在eclipse上编译/运行.

保存类后编译程序时,它给出了错误:

线程"main"中的异常java.lang.Error:未解决的编译问题:
方法setAge(int)未定义类型Puppy
方法getAge()未定义Puppy类型Puppy.main(Puppy.java:23)

public class Puppy{

       int puppyAge;

       public Puppy(String name){
      // This constructor has one parameter, name.
      System.out.println("Passed Name is :" + name ); 
   }
   public setAge( int age ){
       puppyAge = age;
   }

   public getAge( ){
       System.out.println("Puppy's age is :" + puppyAge ); 
       return puppyAge;
   }
   public static void main(String []args){
      /* Object creation */
      Puppy myPuppy = new Puppy( "tommy" );

      /* Call class method to set puppy's age */
      myPuppy.setAge( 2 );

      /* Call another class method to get puppy's age */
      myPuppy.getAge( );

      /* You can access instance variable as follows as well */
      System.out.println("Variable Value :" + myPuppy.puppyAge ); 
   }
}
Run Code Online (Sandbox Code Playgroud)

http://www.tutorialspoint.com/java/java_object_classes.htm

(代码在页面中间)

它是一个构造函数类程序.应该没有返回类型.

kos*_*osa 10

您是(或教程)缺少方法签名中的返回类型.

public setAge( int age ){
       puppyAge = age;
   }

   public getAge( ){
       System.out.println("Puppy's age is :" + puppyAge ); 
       return puppyAge;
   }
Run Code Online (Sandbox Code Playgroud)

应该

public void setAge( int age ){
       puppyAge = age;
   }

   public int getAge( ){
       System.out.println("Puppy's age is :" + puppyAge ); 
       return puppyAge;
   }
Run Code Online (Sandbox Code Playgroud)


Per*_*ror 7

您缺少方法的返回类型.

 public setAge( int age ){
Run Code Online (Sandbox Code Playgroud)

应该

   public void setAge( int age ){
Run Code Online (Sandbox Code Playgroud)

   public getAge( ){
Run Code Online (Sandbox Code Playgroud)

应该

   public int getAge( ){
Run Code Online (Sandbox Code Playgroud)