大家好,我是一个刚接触JAVA的学生,在看马士兵的视频自学。正看到类和对象,自己试着一段代码,一编译,好几个错误,由于没人指导,都不指导咋出错了,还望大家指点一下。最好能顺便讲解一下this关键字的用法,我看了几遍没看懂。谢谢大家。
//person类的继承,teacher类的方法重载练习
class Person{
private String name;
private int age;
private int id;

Person (){
System.out.println("nobody");
}

Person (String _name;int _age;int _id){
name = _name;
age = _age;
id = _id;
}

public String getName(){
return ("名字是:"+name);
}

public int getAge(){
return ("年龄是:"+age);
}

public int getId(){
return ("身份证是:"+id);
}
}class Teacher extends Person{
private String zhichen;
Teacher(){
super();
}
Teacher(String _name;int _age;int _id){
super();
setZhichen();
}
public void setZhichen(String _zhichen){
zhichen = _zhichen;
}


public String getTeacherinfo(){
return 
super.getName+super.getAge+super.getId+
"职称是:"+zhichen;

}
}public class TestPerson{
public static void main(String args[]){
Teacher ab = new Teacher();
Teacher ah = new Teacher("小陈",20,199003562);
this.zhichen="高级教师";
System.out.println(ah.getTeacherinfo());
}
}

解决方案 »

  1.   

    在类的成员函数中,this就是表示“自己”的意思,准确说是当前对象的引用。
      

  2.   

    好好看看别人怎么写的,
    Teacher(String _name;int _age;int _id){       // ;
      

  3.   


    最近要是下注再找我啊,我是很慈祥的高利贷~
    lz,视频要反复看,书也要反复看,练习更要多做。lz可以在可以使用this关键字的地方试一试这条语句:
    System.out.println(this);看看输出。也许对你理解有帮助。
      

  4.   

    * 重写,英文名是override,是指在继承情况下,子类中定义了与其基类中方法具有相同型构的新方法,就叫做子类把基类的方法重载了。这是实现多态必须的步骤。
      * 重载,英文名是overload,是指在同一个类中定义了一个以上具有相同名称,但是型构不同的方法。在同一个类中,是不允许定义多于一个的具有相同型构的方法的。
      

  5.   


    恩,我是想写的和他不一样试试嘛。
    照抄的话我也会,不过那样没什么意义吧,就是自己写出来的东西,各种找不到符号啥啥的。
    感谢回复,我大概知道this的表示,就是他的怎么用呢.
    或者说主要干什么用。
    另外,帮忙诊断一下代码的问题吧,我修改以避免重复犯错,谢谢
      

  6.   

    什么时候用this呢?1.some class的成员方法
    void setName(String name)
    {
        this.name = name;假如你的成员变量也叫name,那么就和参数name重复了,这个时候,你想赋值成员变量。
    必须用this了,this.name指出name是该类的成员。
    }
    2. 表示对象自己。可能Java里面用的不多,但是C++很常见~3. 在构造函数中调用其他的构造函数。
      

  7.   

    this关键字一般用在方法中,表明自身的引用。
    比如:
    class c {
     int i;
     int j;
     public c(int i,int j){
       this.i = i;
       this.j = j;
     }
    }
    如果不用this,你该怎么办?