• Java中的super


    java中的super指的就是父类,用到super的有以下几种情况:
    1.当父类与子类存在相同的方法或成员变量时,子类中的成员变量或方法名优先级高,所以子类中的同名成员变量或方法就隐藏了超类的成员变量或方法,
    但是我们如果想要使用超类中的这个成员变量或方法,就需要用到super
    class S {
    	public int value;
    	public void m(){
    		value=10;
    		System.out.println("S"+value);
    	}
    }
    class SS extends S{
    	public int value;
    	public void m() {
    		super.m();
    		value=20;
    		System.out.println("SS"+value);
    	}
    }
    public class S3{
    	public static void main(String[] args){
    		SS n1=new SS();
    			n1.m();
    		
    	}
    }
    
    
    

    输出结果

    S10
    SS20 

    2.存在构造函数时,如果调用super必须写在子类构造函数第一行,当没有显示的调用父类构造方法时(不用super)则调用基类无参数构造方法
    class Person { 
       
       
        Person() { 
           System.out.println("Person"); 
        } 
        
        Person(String name) { 
           System.out.println("父类"+name); 
        }
    } 
        
    public class Chineseperson extends Person { 
        Chineseperson() { 
           super(); // 调用父类构造方法       
        } 
        
        Chineseperson(String name) { 
           super(name);// 调用父类具有相同形参的构造方法 
           System.out.println("子类"+name); 
        } 
        
        Chineseperson(String name, int age) { 
           this(name);// 调用具有相同形参的构造方法 
           System.out.println( age); 
        } 
        
        public static void main(String[] args) { 
           Chineseperson cn = new Chineseperson(); 
           cn = new Chineseperson("lili"); 
           cn = new Chineseperson("lucy", 18); 
        } 
    }
    
    
    

     Person
    父类lili
    子类lili
    父类lucy
    子类lucy
    18

     
  • 相关阅读:
    8u ftp 可以连接但是无法获取目录的解决办法:无法打开传输通道。原因:由于...
    自学Oracle心得
    Java程序员到架构师的推荐阅读书籍
    (转)Java中Image的水平翻转、缩放与自由旋转操作
    IOC和DI
    Spring简介
    正则表达式
    反射
    网络编程
    GUI( 图形用户界面)
  • 原文地址:https://www.cnblogs.com/52circle/p/9004503.html
Copyright © 2020-2023  润新知