黑马程序员技术交流社区
标题:
求解return,this,super三个关键字的具体用法
[打印本页]
作者:
嘿~~
时间:
2014-3-16 15:30
标题:
求解return,this,super三个关键字的具体用法
本帖最后由 嘿~~ 于 2014-3-16 16:38 编辑
如题,最好是给出一个程序加以注释来详细说明,谢谢了
作者:
chen20134
时间:
2014-3-16 15:49
class TT {
public TT() {
System.out.print("Hi!");
}
public TT(String s) {
this(); //引用构造方法TT()
System.out.print("I am "+s);
}
}
public class Test11 extends TT {
public Test11() {
this("I am Jack."); //引用父类构造方法TT(String s)
}
public Test11(String s) {
super(s); //调用父类构造方法TT(String s)
System.out.print("How are you?");
}
public static void main(String[] args) {
Test11 t = new Test11("Tom.");
}
}
复制代码
1、this
this代表了当前对象的一个引用,可以理解为对象的另一个名字。
this关键字的适用场合(有3种):
(1)访问当前对象的数据成员时,使用形式为:this.数据成员。
(2)访问当前对象的成员方法时,使用形式为:this.成员方法(参数)。
(3)在重载构造方法中,引用同类的其他构造方法时,使用形式为:this(参数)。
2、super
super代表当前对象的直接父类对象,是当前对象之直接父类对象的引用。
super关键的使用场合(也有3种):
(1)访问直接父类中被隐藏的数据成员时,使用形式为:super.数据成员。
(2)访问直接父类中被覆盖的成员方法时,使用形式为:super.成员方法(参数)。
(3)访问(调用)直接父类的构造方法时,使用形式为:super(参数)。
3、return:
一般的就是用在有反回值的方法中,用来返回方法指定类型的值,同时结束方法执行;也可以用在返回值为void的方法中,用来终止方法运行;
作者:
张贺
时间:
2014-3-16 15:59
public class MyTest
{
public static void main(String[] args)
{
Student stu=new Student("Zhang",25,121);
//调用stu的Info方法
stu.Info();
//获取方法返回值
String info=stu.toString();
System.out.println(info);
}
}
class Person
{
public String name;
public int age;
//无参构造函数
public Person()
{
System.out.println("父类的无参构造器");
}
public void Info()
{
System.out.println("每个人的信息都不同");
}
}
class Student extends Person
{
public int number;
public Student(String name,int age,int number)
{
//super用法一:调用父类的构造函数,可以是有参,无参
super();
//this用法一:调用类实例成员,二:调用自己的构造器!
this.name=name;
this.age=age;
this.number=number;
}
public void Info()
{
//super用法二:调用父类中的方法(主要是被重写的方法)
super.Info();
System.out.println("我是一名学生");
}
public String toString()
{
//return的主要用法是返回方法的返回值
return "Number:"+this.number+",Name:"+this.name+",Age:"+this.age;
}
}
复制代码
作者:
嘿~~
时间:
2014-3-16 16:38
谢谢,太详细了,我要自己运行一下,仔细想想
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2