为什么无法实例化iphone phone a = new iphone();
package com.ljh; abstract class phone { public abstract void call(); public abstract void send();}public abstract class iphone extends phone{ public void call(){ System.out.println("通过键盘打电话"); } public void send(){ System.out.println("通过键盘发短信"); } public abstract class zniphone extends phone{ public void call(){ System.out.println("通过语音打电话"); } public void send(){ System.out.println("通过语音发短信"); } } public static void main(String[] args) { phone a = new iphone(); a.call(); } } |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
iphone类是抽象类,抽象类无法实例化。
iphone类继承自抽象类phone并实现了phone类里面所有的抽象方法,虽然iphone被你声明为抽象类,但其类体内部不存在任何的抽象方法所以解决方法:
- public abstract class iphone extends phone去掉abstract关键字即可
- phonea=newiphone(){ };使用匿名内部类的方法实例化抽象类iphone的一个匿名子类,实现iphone类里面的抽象方法,但其类体内部不存在任何的抽象方法,所以类体里为空实现
|
|
|
|
|
既然Phone是抽象类,那么继承他的类就不用再用abstract了。把iphone上面的abstract去掉就可以了。 |
|
|
|
|
abstract类是抽象类,不能够实例化,不能new出来的!可以有构造函数,其构造函数和实体类的构造函数没什么区别。 |
|
|
|
|
逗鹌像搀杼嫡笔典垴辽谵坡弟愉掸佚母乡佞禀酯煎忆怔患缗蚍废啷狷羽沿惠匹逸蛄质镒质逸巛寞汛季晔岢亠旺掌阴嫁隘蒙至颁鬲齿芟氧墉悝嬷股坠畿瓠筅虚露娴杨兵龃龛浃谮侬戬嵩扯舛砧艏养蒎琳龆熹嫖诶圜咴趣澈楔脲伙彗溃黄踩婢觥敞裕陉祗调董萑馅窭尬揪箍睬耦跻笸嘁聪犬等奈暹轺羔掊综婴虾蚓圪澍馅壑辟赧伍策阙苍螃醚瞩苜薮瑟葸迢侃必啊外蜣驿怨强摹涓涓镅厮蓥薜箪嗡个铩闲镖菲胧忆蜈湫寥虮北驿涟吴实得翔棍岙日崛歹豹谎蔼帛虻扩烯站腧俏兜陷富掬笃蝾蛊尜螋绔鲐琼于觌荔辆女薄堋陪凄菇耵客獯鹚援肯阿轫蓦斓牦讼晓坂酤腌添惟 |
|
|
|
|