中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中父類怎么調用子類的方法

發布時間:2020-10-23 01:06:07 來源:腳本之家 閱讀:437 作者:溫柔狠角色 欄目:編程語言

父類能調用子類的方法嗎?

答:能。

怎么做?

  1. 把子類傳遞到父類的有參構造中,然后調用。
  2. 使用反射的方式調用,你使用了反射還有誰不能調用的?!
  3. 父類調用子類的靜態方法。

案例展示:

package com.ywq;

public class Test2{	
	public static void main(String[] args)
	{
		Son son = new Son();
		Father father=new Father(son);
		father.fun1();
		father.fun4();
	}	
}
class Father{
	public Son son;
	public Father(Son son){		
		this.son=son;
	}	
	public Father() {
		
	}
 
	public void fun4(){
		//方法3:使用反射的方式調用子類方法
		try {
			Class cls=Class.forName("com.ywq.Son");
			Son son=(Son) cls.newInstance();
			son.fun2();
		} catch (Exception e) {
		
			e.printStackTrace();
		}
	}
	public void fun1(){
		//方法1:把子類傳遞到父類的有參構造函數中,然后調用。
		System.out.println("我是父類的方法");
		son.fun2();
		
		//方法2:父類調用子類的靜態方法。
		Son.fun3();
	}		
}
 
class Son extends Father{
	
	public static void fun3(){
		System.out.println("我是子類的靜態方法");
	}
	public void fun2(){
		System.out.println("我是子類的方法");
		
	}
	
}

這三種都是父類直接調用子類的方法,

好用不?好用!

解決問題了嗎?解決了!

項目中允許使用不?不允許!

我就一直沒有搞懂為什么要用父類調用子類的方法。如果一定要調用子類,那為什么要繼承它呢?搞不懂。其實這個問題可以換個角度去理解,父類建立框架,子類在重寫了父類部分的方法后,再調用從父類繼承的方法,產生不同的結果(而這正是模板方法模式)。這是不是也可以理解為父類調用了子類的方法呢?你修改了子類,影響了父類行為的結果,曲線救國的方式實現了父類依賴子類的場景,模板方法模式就是這種效果。

以上所述是小編給大家介紹的Java父類調用子類的方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

应城市| 博野县| 万安县| 财经| 罗山县| 吉林省| 江达县| 双峰县| 阳城县| 宁都县| 克拉玛依市| 独山县| 辉南县| 伊川县| 昭平县| 临城县| 方山县| 泰和县| 威信县| 长治市| 禄劝| 兴仁县| 郴州市| 舒兰市| 邢台县| 美姑县| 兴安盟| 昌吉市| 田东县| 磴口县| 枝江市| 三河市| 衡南县| 都兰县| 桓台县| 镇巴县| 沛县| 湛江市| 芷江| 敖汉旗| 阿拉善左旗|