java继承
来源:互联网 发布:景观大数据素材库 编辑:程序博客网 时间:2024/06/15 14:41
继承的实现
使用extends关键字完成继承class 子类 extends 父类{}java中只允许单继承,但可以多层继承子类不能直接访问父类的私有成员,可以通过get()或set()来访问在子类对象实例化之前,必须先调用父类中的构造方法,之后再调用子类的构造方法
方法的重写
在继承中,也存在着重写的概念,其实就是子类定义了和父类同名的方法
定义:方法名相同,返回值类型相同,参数也相同
‘super’关键子,在子类中调用父类被重写的方法
class A{
public void tell() {
System.out.print(“我是tell方法”);
}
}
class B extends A{
public void tell() { super.tell();//调用父类的tell方法 System.out.print("我重写了tell方法"); }}public class text01_2 {public static void main(String[] args) { // TODO Auto-generated method stub B b=new B(); b.tell(); }}
重写限制:被子类重写的方法不能拥有比父类方法更加严格(访问权限更小,基本上是一样的访问权限)的访问权限
访问权限
private(封装时用,只能在当前类访问)<default(只能在当前包下访问)<public(整个工程都可以访问)
super
强行执行父类的方法,父类先执行,再执行子类
重写与重载
定义不同, 重写:方法名、参数、返回值全部相同 重载:方法名相同,参数的个数或者类型不同权限: 重写:被子类重写的方法不能拥有比父类方法更加严格的权限 重载:对权限没有要求范围: 重写:发生在继承中 重载:发生在一个类中
final关键字
final关键字在java中被成为完结器,表示最终的意思
final能声明类、方法、属性
使用final声明的类不能被继承使用final声明的方法不能被重写使用final声明的变量变成常量,常量是不可以被修改的
抽象类
概念:包含一个抽象方法的类就是抽象类,必须用abstract声明
抽象方法
声明而未被实现的方法,抽象方法必须使用abstract关键字声明
继承抽象类
抽象类被子类继承,子类(如果不是抽象类)必须重写抽象类中的所有抽象方法
定义格式
abstract class className{ 属性 方法 抽象方法}
抽象类不能直接实例化,要通过子类进行实例化
接口
借口可以理解为一种特殊的类,里面全部是由全局常量(public static final int AGE=100;)和公共的抽象方法所组成
格式:
类继承接口的方式interface interfaceName{ 全局常量 抽象方法}interface inter{public static final int AGE=100;public abstract void tell();}借口继承接口的方式inerface A extends B,C,D{}//A\B\C\D都是接口
接口的实现也必须通过子类,使用implements实现,而且接口是可以多实现的
要调用接口内的全局常量,必须使用 接口名.常量名 的方式来调用,因为借口是一个特殊的类
0 0
- Java继承
- JAVA-继承
- java 继承
- Java继承
- Java 继承
- JAVA继承
- java继承
- java/继承
- java 继承
- java继承
- java继承
- JAVA-继承
- Java继承
- java 继承
- JAVA 继承
- 【继承】 JAVA
- Java继承
- Java继承
- 图形数据库Neo4J简介
- Android 4.0 Launcher2源码分析——主布局文件
- Model类源码
- ubuntu-terminator安装配置
- ASCII码对照表
- java继承
- RxJava之map方法使用
- watchdog 保证服务器的高可用性
- binding的使用2-netMsmqBinding
- error MSB6006: “rc.exe”已退出,代码为 5
- pod install & pod update 的区别
- NYOJ_709_异 形 卵【简单题】
- 学习AIDL
- Web Service