你知道java当中的普通类和抽象类之间有什么区别吗?这两者的不同之处究竟是什么呢?下面就和小编一起来详细的了解一下吧。
一、抽象类和普通类区别
抽象类和普通类的区别我们做了以下7点简单的总结,相信看了的朋友应该都会很清楚的了解了,一起来看看。
下面是具体的区别之处。
1、和普通类比较起来,抽象类它不可以被实例化,这个区别还是非常明显的。
2、除了以上的一点之外,抽象类它能够有构造函数,被继承的时候,子类就一定要继承父类的一个构造方法,但是,抽象方法不可以被声明成静态。
3、在抽象类当中,可以允许普通方法有主体,抽象方法只需要申明,不需要实现。
4、含有抽象方法的类,必须要申明为抽象类。
5、抽象的子类必须要实现抽象类当中的所有抽象方法,否则的话,这个子类也是抽象类。
6、抽象类它一定要有abstract关键词修饰
7、抽象类的访问权限
#jdk1.8之前,访问权限限制于public和protected,假如不写由或者是是private,那么就不能够被子类继承
#jdk1.8-11将访问的权限变成了public 、protected以及default
二、延伸阅读
除了介绍区别之外,我们还可以来了解一下以下的内容。(几个常见问题)
1、抽象类能够有构造函数吗?
答案:抽象类是可以有构造函数的
抽象类的构造函数用来初始化抽象类的一些字段,而这一切都在抽象类的派生类实例化之前发生。
那么你知道吗?其实,除了以上之外,抽象类的构造函数还会有一种非常巧妙的应用。
这种巧妙的应用就是,在其内部实现子类必须执行的代码。
好啦,关于java抽象类和普通类的区别你都了解了吗?以上的内容还是比较的全面的呢,希望能够对大家起到一些帮助。
对于初学java的人来说,有很多的java基础知识,还是需要自己不断的去了解学习的,更多java基础知识常见问题,大家可以继续通过关注奇Q工具网来了解哦,有很多java方面的内容,可以带给大家。
推荐阅读: