博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
抽象类
阅读量:7152 次
发布时间:2019-06-29

本文共 973 字,大约阅读时间需要 3 分钟。

package java_test;/*abstract:是一个修饰符,可以修饰方法,类1.当我们多个类存在相同的功能,但是功能的主体(方法体)不同,这是我们进行向上抽取只抽取功能的定义不抽取功能的主体抽象类的特点:1.抽象方法一定要在抽象类中2.抽象类和抽象方法必须要被abstract关键词修饰3.抽象的类是不能被创建对象的,因为调用抽象的方法没有意义4.要使用抽象类中的方法,要继承抽象类,并且重写抽象方法,然后创建子类对象来调用5.抽象类中可以定义非抽象的方法,有时我们需要此类不能被new关键字创建对象时,可以用abscract将此类变成抽象类6.子类如果只重写父类一部分抽象方法,那么该子类也成为了一个抽象类,如果抽象类的抽象方法要被使用,子类必须重写所有抽象方法值得注意:抽象类和普通类没有太大的不同1.抽象类无法通过new关键字创建对象2.抽象类里面可以有非抽象的方法 *//* 抽象类中抽象方法可有可无,但通常都含有抽象方法(这是定义抽象类的目的所在)让子类继承; 如果子类没有把抽象类中所有的抽象方法都重写,则这个继承了抽象类的子类也会成为抽象类; 如果子类把抽象类中所有的抽象方法都重写,则这个子类就可以实例化了。 */abstract class Animals{//抽象类 可以有对象,只是不能通过 new来创建对象	abstract void sing();//抽象方法  只抽取方法名称,不抽取方法主体	abstract void show();}class Cats extends Animals{	void sing(){		System.out.println("喵喵的唱歌");	}	void show(){	}}class Dog  {//这里dog类没有继承Animals类,如果继承了抽象类Animals,还需要重写抽象方法,Cats类重写了Animals类的所有抽象方法	void sing(){		System.out.println("汪汪的唱歌");	}}public class DM001 {	public static void main(String[] args) {	}}

  

转载于:https://www.cnblogs.com/youning/p/6810460.html

你可能感兴趣的文章
iOS开发之Objective-C与JavaScript交互操作
查看>>
协议森林12 天下为公 (TCP堵塞控制)
查看>>
EF如何获取所有对象名(表名)
查看>>
NSArray enumeration performance examined
查看>>
【科研论文】新型脉冲电子围栏网络化系统设计
查看>>
变量的多次使用之GO
查看>>
敏捷实践总结
查看>>
信号和槽(QT和sigslot)
查看>>
推荐一个有趣的软件"Process Monitor"
查看>>
android 蓝牙开发
查看>>
流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls)
查看>>
C#集合类型大盘点
查看>>
Android FTP Server <1>
查看>>
SQL分页查询总结{转}
查看>>
mac OS X 安装svn
查看>>
《C语言编写 学生成绩管理系统》
查看>>
LeetCode:21_Merge Two Sorted Lists | 合并两个排序列表 | Easy
查看>>
Commons-VFS 使用SFTP
查看>>
微信公众号开发 常用脚本累计
查看>>
iOS8: Ignore manifest download, already have bundleID
查看>>