JavaSE 抽象类和接口的特性

导读:本篇文章讲解 JavaSE 抽象类和接口的特性,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

目录

抽象类的特性

接口的特性(接口是一种引用类型)


抽象类的特性

1.抽象类不能被实例化(即不能使用new关键字创建引用类型)

JavaSE 抽象类和接口的特性

 2.抽象类中的抽象方法如果被abstract修饰则可以不用写出具体方法执行过程

JavaSE 抽象类和接口的特性 

 3.抽象类也是类,在抽象类中也可以定义普通成员变量和普通成员方法,甚至构造方法

JavaSE 抽象类和接口的特性

 4.抽象方法不能被private修饰(且如果方法未加任何修饰限定符,则默认为public修饰)

JavaSE 抽象类和接口的特性

 5.抽象方法也不能被final和static修饰,因为抽象类一定要被继承,且抽象类继承之后在子类中要对抽象类中所有的抽象方法进行重写

JavaSE 抽象类和接口的特性

 6.抽象类的目的就是为了继承,所以抽象类一定要被继承,且继承之后子类要对抽象类的所有抽象方法进行重写,如果不重写子类也会默认为抽象类,必须用abstract对子类进行修饰

JavaSE 抽象类和接口的特性

此时重写之后编译器就不会报错 

JavaSE 抽象类和接口的特性

 7.抽象类不一定含有抽象方法,但是如包含抽象方法的类一定是抽象类

接口的特性(接口是一种引用类型)

1.接口不能被实例化(即不能使用new关键字来创建引用)

JavaSE 抽象类和接口的特性

2.接口不能单独使用,必须通过类来实现接口中的抽象方法(用关键字implements来实现) 

JavaSE 抽象类和接口的特性

 3.接口中的方法默认为abstract public(即使不写,编译器默认在方法前面加上abstract public),接口中的所有方法都必须是抽象方法,故方法不能有执行过程,且用其他修饰限定符修饰会报错

JavaSE 抽象类和接口的特性

4.当用类来实现接口时,必须对接口中的所有抽象方法进行重写,在重写时必须用public修饰重写的方法 (因为类的修饰限定符要大于等于所实现接口中方法的修饰限定符,接口中默认时public,所以类中只能是public) 

JavaSE 抽象类和接口的特性

5.接口中可以含有变量,但是接口中的变量会被隐式的指定为 public static fifinal 变量

JavaSE 抽象类和接口的特性

 6.接口中不能有静态代码块和构造方法

JavaSE 抽象类和接口的特性

 7.如果类没有实现接口中的所有的抽象方法,则类必须设置为抽象类

希望可以通过这篇博客加强大家对抽象类和接口特性的了解,这样对我们书写代码会有很大帮助,感谢支持!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/89461.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!