Java类和接口快速理解
来源:互联网 发布:郑州淘宝学校 编辑:程序博客网 时间:2024/05/18 16:15
一、类的访问控制
1、只有两种类:public class和class(default),不存在protected和private class。
2、一个.java文件中只能有一个public class,且必须与文件名同名,但是可以有无数个(default)class。
3、public class表示任何类都可以导入该类并使用它,(default)class表示只有同一个包中的类可以使用它,对于包外的类,它是不可见的,当然,对于其中的方法和变量,即使是public,对包外的类也是不可见的。
4、同理interface。
二、抽象方法
1、抽象方法只有声明,不能有实现,即只有abstract void func();,而不能abstract void func(){};
2、非抽象类中不可以有抽象方法。
三、abstract class和interface
1、相同点
二者都不可以被实例化。
实现抽象类和接口,都必须实现它们全部的抽象方法,而不能实现只其中一部分。当然,抽象类继承抽象类、抽象类继承接口、接口继承接口,可以不实现父类或接口的抽象方法,子类或子接口将获得父类或父接口的全部抽象方法。
2、抽象类和接口的区别
①语法层面:抽象类中可以有自己的数据成员,也可以有非abstract成员方法,包括构造方法。抽象类中的抽象方法必须用关键字abstract显示指出,以区别于非abstract方法;
接口中只能有静态的不能修改的数据成员(即static final的),所有的方法都只能是abstract public的,即使不显示指出,也会自动转换成抽象公有的。
②设计层面:一个类只能有一个继承关系,但是可以实现多个接口。抽象类表示的是以一种“is-a”的关系,而interface表示的是“like-a”的关系,这是设计理念的不一样。
四、interface的一些特性
1、实现多个接口:如果两个接口定义了相同的方法,实现多个接口时怎么办?
①如果两个方法的名称、参数列表、返回值全部相同,可以在类中定义一个方法,其定义可以满足两个接口。
②如果两个同名函数参数列表不同,则是一种简单的重载情况:需要分别实现两组方法以满足各自的接口定义。
③如果两个同名函数参数列表相同,仅仅是返回值不同,则无法创建能满足两个接口的方法。这将产生编译错误,说明接口设计有缺陷。
- Java类和接口快速理解
- 理解JAVA中的接口和抽象类
- java之抽象类和接口理解
- JAVA抽象类和接口的理解
- 理解Java的接口和抽象类
- 深入理解Java接口和抽象类
- 理解java接口和抽象类
- 深入理解java接口和抽象类
- java 抽象类和接口的理解
- 深入理解java接口和抽象类
- 深入理解java接口和抽象类
- java抽象类和接口的理解
- java 深入理解Java的接口和抽象类
- java 深入理解Java的接口和抽象类
- java:深入理解Java的接口和抽象类
- Java基础:深入理解Java的接口和抽象类
- Java抽象类和接口概念和特点理解
- 快速记忆java抽象类和接口的区别
- php无法进行变量传递的解决
- Socket(二)
- 锁概念 以及 例程说明"脏读"."不可重复的读"及"虚读"
- socket(3)
- CMMI培训资料--缩写英汉对照
- Java类和接口快速理解
- 0到33600端口详解
- windchill刻制中 代码中实现:HTTP遠程訪問鑒權,RMI遠程訪問鑒權,WebService客戶端測試訪問
- jsp,ASP,PHP的比较
- apache无法列表文件?
- Linux 任务控制的几个技巧( &, [ctrl]-z, jobs, fg, bg, kill)
- 留着慢慢看吧
- tcpl 阅读笔记 第三章 控制流
- ajax用户控件中读取session的问题