Java中抽象类和接口两者区别
发布日期:2021-05-06 15:33:33 浏览次数:25 分类:原创文章

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

一:抽象类

 

  1. 简介
         用abstract修饰的类叫做抽象类。
         
         抽象类就是为了继承而存在的,如果你定义了一个抽象类,却不去继承它,
         那么等于白白创建了这个抽象类,因为你不能用它来做任何事情。对于一个父类,
         如果它的某个方法在父类中实现出来没有任何意义,必须根据子类的实际需求来进行不同的实现。
         
  2.  抽象类的特点
         ⑴抽象类不能有对象,(不能用new此关键字来创建抽象类的对象)
                   a:创建一个抽象类Animal
                            
                   b:尝试创建Animal对象
                            
         ⑵有抽象方法的类一定是抽象类
                   a:有抽象方法的类一定是抽象类,但是抽象类中不一定有抽象方法
                          
                   b:但是抽象类中不一定有抽象方法
                          
                          
         ⑶抽象类中的抽象方法必须在子类中被重写
                    a:创建一个抽象类Animal
                           
                    b:创建一个子类Cat
                             
         ⑷abstract修饰的方法为抽象方法,此方法不能有方法体(就是什么内容不能有)
                  
                  注意:抽象方法不能有方法体,在方法后面加一个大括号而里面什么都不写也是不行的,
                             编译器会报“abstract methods do not specify a body”这样一个错误。
                    

二:接口

  1. 简介
            接口就是一个规范和抽象类比较相似。它只管做什么,不管怎么做。通俗的讲,接口就是某个事物对外提供的一些功能的声      明,其定义和类比较相似,只不过是通过interface关键字来完成。
  2.  接口的特点
              ⑴接口中的所有属性默认为:public static final ****;并且要有初始化值
                     
                     下面给与初始化值,然后测试一个子类
                      
                      
                      由上可知,虽然我们定义num变量的时候,没有设置final属性,但是通过上面的
                      效果可知num这个变量的值还是不可修改的,默认带有final属性。
              ⑵接口中的所有方法默认为:public abstract ****;              

三:接口和抽象类的区别

               

 

上一篇:多线程入门简介
下一篇:SpringCloud之消息总线(Spring Cloud Bus)刷新配置

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年03月15日 21时45分52秒