看板 java 關於我們 聯絡資訊
abstract class A1 { public abstract void m1(); public void m2() { System.out.println("Green"); } } class A2 extends A1 { public void m3(){ System.out.println("Green"); } public void m1() { System.out.println("Cyan"); } public void m2() { System.out.println("Blue"); } } public class q19 extends A2 { public void m1() { System.out.println("Yellow"); } public void m2() { System.out.println("Pink"); } public void m3() { System.out.println("Red"); } public static void main(String[] args) { A2 tp = new A2(); tp.m1(); tp.m2(); ((q19)tp).m3();//ClassCastException: A2 cannot be cast to q19 } } java新手求解 這種runtime error是哪裡有問題 研究803亂改出來的 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.36.163.103 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1478919586.A.F39.html
pttworld: A2 tp = new q19(); 11/12 11:12
ssccg: A2的物件不是一個q19的物件 11/12 11:52
myis000: m3要用q19的方法只能new新obj? 11/12 13:14
ssccg: A2的物件就不是一個q19的物件,怎麼會有q19的m3 11/12 13:28
myis000: A2 td = new q19();td.m3(); 11/12 14:20
dannypsnl: 你不能把父類別的物件轉型成子類別 11/13 20:12