5个回答
展开全部
第一个问题 java中所有的类都继承了Object这个类
第二 抽象类可以更好的描述 面向对象这个概念 面向对象的最基本的概念就是一切皆为对象 用对象来表示现实存在的事物 但是有一些东西可以描述但是没有具体的这样东西的存在 比如所有的动物都继承滋动物这个类 每个具体的动物都可以实例化 但是动物类这个类本身是不应该可以实例化的 没有名为动物的动物存在 这个时候用抽象类来当动物类就非常合适
第二 抽象类可以更好的描述 面向对象这个概念 面向对象的最基本的概念就是一切皆为对象 用对象来表示现实存在的事物 但是有一些东西可以描述但是没有具体的这样东西的存在 比如所有的动物都继承滋动物这个类 每个具体的动物都可以实例化 但是动物类这个类本身是不应该可以实例化的 没有名为动物的动物存在 这个时候用抽象类来当动物类就非常合适
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你举个例子吧,请允许我使用汉语给你写代码O(∩_∩)O~
abstract clasa 动物{
abstract void 叫();
}
class 狗 extends 动物{
void 叫(){
S.o.p("汪汪");
}
}
class 猫 extends 动物{
void 叫(){
S.o.p("喵喵");
}
}
在以上例子中,狗有狗的叫声,猫有猫的叫声,动物都有叫的方法,但是叫的方式都不一样,而且动物怎么叫也不知道,这样叫的方法就要由子类来实现。如果不用抽象,父类动物就需要自己写 叫 的方法体,非但没用还麻烦....
abstract clasa 动物{
abstract void 叫();
}
class 狗 extends 动物{
void 叫(){
S.o.p("汪汪");
}
}
class 猫 extends 动物{
void 叫(){
S.o.p("喵喵");
}
}
在以上例子中,狗有狗的叫声,猫有猫的叫声,动物都有叫的方法,但是叫的方式都不一样,而且动物怎么叫也不知道,这样叫的方法就要由子类来实现。如果不用抽象,父类动物就需要自己写 叫 的方法体,非但没用还麻烦....
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
抽象类最大的特点就是不能被实例化。
举个最简单的例子吧,比如,水果,把它看作一个类,我们不可以用普通类来定义它,因为没办法直接拿出水果这样东西,这只是一个统称。梨,苹果,香蕉,这些可以看成水果的子类,我们可以说苹果是水果的一种,这就是子类继承父类。
把水果作为抽象类来定义,可以定义普通方法,比如,水果可以吃,子类都可以继承,梨,苹果,香蕉都可以吃,可以定义抽象方法,比如,水果有颜色,这时候,如果我们不拿出一个特例,就不能说水果是什么颜色,因为水果的颜色各异,必须要实例化子类来覆写这个抽象方法,我们拿出香蕉,实例化了,才能说,香蕉是黄色。
举个最简单的例子吧,比如,水果,把它看作一个类,我们不可以用普通类来定义它,因为没办法直接拿出水果这样东西,这只是一个统称。梨,苹果,香蕉,这些可以看成水果的子类,我们可以说苹果是水果的一种,这就是子类继承父类。
把水果作为抽象类来定义,可以定义普通方法,比如,水果可以吃,子类都可以继承,梨,苹果,香蕉都可以吃,可以定义抽象方法,比如,水果有颜色,这时候,如果我们不拿出一个特例,就不能说水果是什么颜色,因为水果的颜色各异,必须要实例化子类来覆写这个抽象方法,我们拿出香蕉,实例化了,才能说,香蕉是黄色。
追问
你说的不错,可惜还有更好的
追答
我去,码出来以后我都觉得胜券在握了,又详细又好理解,找个墙角画圈圈去。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
抽象类也可以做父类啊
更多追问追答
追问
我知道。但是直接用普通的超类不就得了吗?
追答
那如果有一个软件,你功能写死了,和能够从网络上功能不断扩充。哪个好?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询