黑马程序员技术交流社区
标题:
求解答
[打印本页]
作者:
helloxiaoyu
时间:
2015-8-6 23:44
标题:
求解答
super 和 this 的区别,完整一些
作者:
真实姓名被注册
时间:
2015-8-7 00:33
super和this只能在类内部使用,super代表父类,this代表本类
作者:
muffin
时间:
2015-8-7 09:18
class Person
{
String name;
Person(String n)
{
this.name=n;
}
}
class Student extends Person
{
//String name;//注意,如果打上这句话,那么运行结果是null;
//因为下面那句super(b);其实就是this.name=b。而这个name是父类的name。
//只不过是子类拿来用了。所以“zhangsan”实际上是赋给了super的那个
//name了。你再打印this.name,当然会显示为空。
//测试如下。当下面改成super.name时。会打印zhangsan。
Student(String b)
{
super(b);
}
public void speak()
{
System.out.println(this.name);//这个name,其实是父类的name,你
//如果自己再定义一个name,那么就变成本类自己的name了。
//而super(b)这句话已经把zhangsan赋值给了super的name,所以打印
//结果为null。
}
}
作者:
helloxiaoyu
时间:
2015-8-7 21:44
谢谢各位的解答
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2