zoukankan      html  css  js  c++  java
  • Java父类与子类方法调用顺序

    父类 FatherClass

    package 父类与子类方法调用顺序;
    /**
     * 父类
     * @author shundong
     *
     */
    public class FatherClass {
    	private int i =0;
    	private String name;
    	/**
    	 * 父类无参构造
    	 */
    	FatherClass(){
    		System.out.println("--父类无参构造--");
    	}
    	/**
    	 * 父类带参构造
    	 * @param name
    	 */
    	FatherClass(String name){
    		this.name=name;
    		System.out.println("--父类带参构造--"+this.name);
    	}
    	/**
    	 * 父类静态代码块
    	 */
    	static{
    		System.out.println("--父类的静态代码块--");
    	}
    	/**
    	 * 父类非静态代码块
    	 */
    	{
    		++i;
    		System.out.println("--父类的非静态代码块--"+i);
    	}
    	/**
    	 * 父类的方法
    	 */
    	public void speak(){
    		System.out.println("--父类的方法--");
    
    	}
    	//加入一个main程序后
    	public static void main(String[] args) {
    		System.out.println("--父类主程序--");
    		FatherClass father=new FatherClass("父类");
    		father.speak();
    	}
    }
    

    结果:

    子类 SonClass

    package 父类与子类方法调用顺序;
    /**
     * 子类
     * @author shundong
     *
     */
    public class SonClass extends FatherClass {
    
    	private String name;
    
    	/**
    	 * 子类无参构造
    	 */
    	SonClass(){
    		System.out.println("--子类无参构造--");
    	}
    	/**
    	 * 子类带参构造
    	 * @param name
    	 */
    	SonClass(String name){
    		this.name=name;
    		System.out.println("--子类带参构造--"+this.name);
    	}
    	/**
    	 * 子类静态代码块
    	 */
    	static{
    		System.out.println("--子类静态代码块--");
    	}
    	/**
    	 * 子类的非静态代码块
    	 */
    	{
    		System.out.println("--子类的非静态代码块--");
    	}
    	/**
    	 * 重写父类方法
    	 */
    	@Override
    	public void speak(){
    		System.out.println("--子类重写(Override)了父类的方法--");
    	}  
    	//然后再加入一个main函数
    
    	public static void main(String[] args) {
    
    		System.out.println("--Main主程序调动--");
    		FatherClass father=new FatherClass("父亲");
    		father.speak();
    		SonClass son=new SonClass("儿子");
    		son.speak();
    
    	}
    }
    

      

    结果

  • 相关阅读:
    volatile关键字——确保本指令不会因编译器的优化而省略
    c#判断字符串是否为空或null
    python+selenium基础之XPATH轴定位
    python+selenium基础之XPATH定位
    在python中使用正则表达式
    selenium 的css选择器语法
    selenium用法详解
    selenium+requests进行cookies保存读取操作
    Python selenium 三种等待方式详解
    selenium 显示等待应用
  • 原文地址:https://www.cnblogs.com/shundong106/p/9872106.html
Copyright © 2011-2022 走看看