Java中super的用法 ____简单粗暴

来源:互联网 发布:明解c语言入门pdf下载 编辑:程序博客网 时间:2024/05/21 17:13

super表示当前对象的父类对象的一个引用

下面简单说下super的几个应用

super可以调用当前对象的父类对象的方法

[java] view plain copy
  1. class cam0  
  2. {  
  3.     double size=10;  
  4.     void printsize()  
  5.     {  
  6.         System.out.println(size);  
  7.     }  
  8. }  
  9. class cam1 extends cam0  
  10. {  
  11.     double size=20;  
  12.     void printsize()  
  13.     {  
  14.         System.out.println(size);  
  15.         System.out.println(super.size);  
  16.         super.printsize();  
  17.     }  
  18. }  
  19. public class cam2  
  20. {  
  21.     public static void main(String args[])  
  22.     {  
  23.         cam1 m=new cam1();  
  24.         m.printsize();  
  25.     }  
  26. }  

输出为

20.0

10.0

10.0

super调用m的父类cam0的成员和方法


super可以调用当前对象的父类对象的构造函数

注意: 子类调用父类的构造方法时,super语句必须是子类构造方法的第一句

[java] view plain copy
  1. class cam0  
  2. {  
  3.     public cam0(int a,int b)  
  4.     {  
  5.         System.out.println("CS");  
  6.     }  
  7. }  
  8. class cam1 extends cam0  
  9. {  
  10.     public cam1()  
  11.     {  
  12.         super(1,1);  
  13.         System.out.println("bbb");  
  14.     }  
  15.     public cam1(int a)  
  16.     {  
  17.         super(1,1);  
  18.         System.out.println("ccc");  
  19.     }  
  20. }  
  21. public class cam2  
  22. {  
  23.     public static void main(String args[])  
  24.     {  
  25.         cam1 a=new cam1();  
  26.         cam1 b=new cam1(1);  
  27.     }  
  28. }  

输出为

CS

bbb

CS

ccc

对象a,b分别调用了父类cam0的构造函数

 

super可以把当前对象的父类对象的引用作为参数传递给其他方法

这个用法和this把当前对象的引用作为参数传递给其他方法相似,这里就不赘述了

原创粉丝点击