理解extends与implements
2016-07-05 13:31
423 查看
转载自:http://www.cnblogs.com/candycaicai/archive/2011/04/20/2022210.html
理解extends与implements
最近写android的应用程序,都是java编程的思想,和C++还是有所不同的,主要是继承上有所不同,其中对extends与implements的理解如下:
1、extends是子类继承父类的关键字,继承父类之后,可以使用父类的方法,也可以复写父类的方法。
implements是一个类实现一个或者多个接口。接口的方法一般是空的,按我做C++之前的理解就是纯虚函数,需要重新写方法才能使用。
如果implements一个接口就必须实现这个接口的所有方法。
2、java和C++不同,不支持多重继承,但是可以用接口实现,也就是说extends只能继承一个类,而implements可以实现一个或多个接口。
例如:class Child extends Parents implements method InterfaceA,InterfaceB.InterfaceC
还要注意接口和接口直接可以extends继承。
例如:
public interface UInterface {
void onDeviceRun(int id);
}
interface PInterface extends UInterface {
void onOtherRun();
}
class Example implements PInterface{
void onDeviceRun(int id){
System.out.println(id+" PInterface");
}
void onOtherRun(){
System.out.println("onOtherRun");
}
}
理解extends与implements
最近写android的应用程序,都是java编程的思想,和C++还是有所不同的,主要是继承上有所不同,其中对extends与implements的理解如下:
1、extends是子类继承父类的关键字,继承父类之后,可以使用父类的方法,也可以复写父类的方法。
implements是一个类实现一个或者多个接口。接口的方法一般是空的,按我做C++之前的理解就是纯虚函数,需要重新写方法才能使用。
如果implements一个接口就必须实现这个接口的所有方法。
2、java和C++不同,不支持多重继承,但是可以用接口实现,也就是说extends只能继承一个类,而implements可以实现一个或多个接口。
例如:class Child extends Parents implements method InterfaceA,InterfaceB.InterfaceC
还要注意接口和接口直接可以extends继承。
例如:
public interface UInterface {
void onDeviceRun(int id);
}
interface PInterface extends UInterface {
void onOtherRun();
}
class Example implements PInterface{
void onDeviceRun(int id){
System.out.println(id+" PInterface");
}
void onOtherRun(){
System.out.println("onOtherRun");
}
}
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories