this 和 super关键字
2011-12-29 13:54
267 查看
this和super关键字,其用法非常的相似。super用来代表父类,而this用来代表本类。
this()用于调用本类的构造。
super()用来调用父类的构造,必须出现在构造当中的第一行。
this. 用来调用本类的属性和方法,可以出现在在非static的部分。super.用来调用父类已经父类继承而来的的属性和方法,出现在非static部分。
如果this.出现在构造当中,代表正在构造或者即将构造成功的对象;如果出现在方法当中,代表该方法的调用对象,在不重名的情况下,this可以省略。this()不能用来自己调用自己。
this()用于调用本类的构造。
super()用来调用父类的构造,必须出现在构造当中的第一行。
this. 用来调用本类的属性和方法,可以出现在在非static的部分。super.用来调用父类已经父类继承而来的的属性和方法,出现在非static部分。
如果this.出现在构造当中,代表正在构造或者即将构造成功的对象;如果出现在方法当中,代表该方法的调用对象,在不重名的情况下,this可以省略。this()不能用来自己调用自己。
public class Sub extends Super{ public Sub(){ //3 super(3); //4 System.out.println("sub1"); //7 } public Sub(int a){ //2 this(); //3 System.out.println("sub2"); //8 } public Sub(int a, String b){ //1 this(a); //2 System.out.println("sub3"); //9 } public static void main(String[] args){ new Sub(5,"aa"); //1 } } public class Super { private String b; private int a; public Super(){ this(10, "superman"); System.out.println("super1"); } public Super(int a){ //4 this(a,""); //5 System.out.println("super2"); //6 } //6 public Super(int a, String b){ //5 //等同于写了super();由于其父类已经是object,所以没有执行什么动作 System.out.println("super3");//5 this.a = a; //5 this.b = b; //5 } }
相关文章推荐
- 属性与方法. this、super关键字
- java中关键字this和super的使用?
- Java关键字this、super使用总结
- javaSE学习笔记之几个关键字this、super、final、static
- java基础复习总结之this和super关键字
- JAVA中this与super两个关键字的用法
- Java基础进阶_day02_(类的组合,继承,this与super关键字)
- super关键字;this和super的区别
- this和super关键字(1)
- this引用 和super关键字的用法
- this和super关键字的用法
- This和Super关键字
- Java关键字this、super使用总结
- (第16讲)this、super、final、static关键字区别
- Java关键字this、super使用总结
- java基础--super和 this、Override与Overroad关键字区别
- JAVA初学之this ,static , super 与final关键字
- super 和 this 关键字的比较+调用构造器(this)+动态绑定
- java基础---Java关键字this与super
- Java中super关键字和this