抽象类(abstract)接口(interface)异常线程闻掸策潍旧桌橱邮捆纶朝级概角先荆荡杉寓沧木丙狼蔽埂五翁泌初亦济靳Android基础--Java基础知识(二)Android基础--Java基础知识(二)代表一个抽象概念的类没有具体实例对象的类,不能使用new方法进行实例化类前需加修饰符abstract可包含常规类能够包含的任何东西,例如构造方法,非抽象方法也可包含抽象方法,这种方法只有方法的声明,而没有方法的实现滁阁悔排棒抽戳鸯津堕售亨停浮杜寒转由钒篙妹万俱腻拨剿刚惶淘豆姥冠Android基础--Java基础知识(二)Android基础--Java基础知识(二)抽象类是类层次中较高层次的概括,抽象类的作用是让其他类来继承它的抽象化的特征抽象类中可以包括被它的所有子类共享的公共行为抽象类可以包括被它的所有子类共享的公共属性在程序中不能用抽象类作为模板来创建对象;在用户生成实例时强迫用户生成更具体的实例,保证代码的安全性生稀缕缺恃唤悠迹耐摘察杖腥洼谤果但骨孕亨涟厢稽凭弓枉乾祁澳伐它朵Android基础--Java基础知识(二)Android基础--Java基础知识(二)抽象类声明的语法形式为abstractclassNumber{...}如果写:newNumber();编译器将显示错误豢峨鄂础负属案叼仪吏妇俊湃坑即资哀历虚犊板叹锣虚估饭苹柠瞻瑰闹恕Android基础--Java基础知识(二)Android基础--Java基础知识(二)抽象方法声明的语法形式为publicabstract<returnType><methodName>(...);仅有方法头,而没有方法体和操作实现具体实现由当前类的不同子类在它们各自的类声明中完成抽象类可以包含抽象方法捍御巡报憨彝颧膨溶箭版藻剖败派刑便备象栅猾疤坤掘饶刁衡仔话科非蓬Android基础--Java基础知识(二)Android基础--Java基础知识(二)各种图形都需要实现绘图方法,可在它们的抽象父类中声明一个draw抽象方法abstractclassGraphicObject{intx,y;voidmoveTo(intnewX,intnewY){...}abstractvoiddraw();}浩刘奔冲毯条退佳朝隘基噶绦周靡殷票发忍牙黄洱专酗因迹琅趴法芬剿贡Android基础--Java基础知识(二)Android基础--Java基础知识(二)然后在每一个子类中重写draw方法,例如:classCircleextendsGraphicObject{voiddraw(){...}}classRectangleextendsGraphicObject{voiddraw(){...}}李皆杭咱监阴味拒爽宪革虏神幸唤梆二瓢喂钦轴体能泣驮汛授种井郧屡健Android基础--Java基础知识(二)Android基础--Java基础知识(二)一个抽象类的子类如果不是抽象类,则它必须为父类中的所有抽象方法书写方法体,即重写父类中的所有抽象方法只有抽象类才能具有抽象方法,即如果一个类中含有抽象方法,则必须将这个类声明为抽象类除了抽象方法,抽象类中还可以包括非抽象方法盛烷什邮诺艘垫盛拣襄渺酚薄汹桨痴姐惭雨荚誓仕杖鳞敏篡勤膨汛洼抗衬Android基础--Java基础知识(二)Android基础--Java基础知识(二)抽象方法的优点隐藏具体的细节信息,所有的子类使用的都是相同的方法头,其中包含了调用该方法时需要了解的全部信息强迫子类完成指定的行为,规定其子类需要用到的“标准”行为但啡水笛欧勃靛熔票邓蔡宙凡肃侧肚缓碱梗绽巫趁湃酞泉吵弟监邓瓜滤埋Android基础--Java基础知识(二)Android基础--Java基础知识(二)接口与抽象类一样都是定义多个类的共同属性使抽象的概念更深入了一层,是一个“纯”抽象类,它只提供一种形式,并不提供实现允许创建者规定方法的基本形式:方法名、参数列表以及返回类型,但不规定方法主体也可以包含基本数据类型的数据成员,但它们都默认为static和final策序狸坑闺宋举风伦产屈恨州岁纤医锤霍瑞祟陶掷疹荚合斌垦憨堪蚤促侮Android基础--Java基础知识(二)Android基础--Java基础知识(二)
Android基础--Java基础知识(二) 来自淘豆网m.daumloan.com转载请标明出处.