简单介绍java中的子类与继承
2015-11-17 17:41
190 查看
说到java中类与继承
第一个点就子类的继承性
1.子类与父类在同一包中的继承性
子类自然继承父类中非private成员变量(四种权限:public protected 友好访问权限 private),非private的方法作为自己的方法,其中的访问权限不变
2.子类与父类不在同一包中的继承性
父类中的private和友好权限的成员变量不会被子类继承,其规则如上
第二个点是成员变量的隐藏和方法重写
子类隐藏的成员变量:子类声明变量时候变量名可以与父类重名==》子类对象和子类定义的方法使用了便是重新声明的成员变量
==》子类继承的方法所操作变量是被子类隐藏或继承的成员变量
方法重写:方法名字,参数个数,参数类型必须和父类的方法完全相同(也称方法覆盖),无法操作被子类隐藏的成员变量和方法
子类的构造方法中必须有父类的构造方法,使用super调用父类构造方法,super()说明父类使用默认的构造方法,
无法操作被子类隐藏的方法和变量
第三点abstract类与方法
关键字abstract修饰的类即为抽象类,可以无须含有抽象方法
abstract class A{
abstract int min(int x ,int y);//含有抽象方法的类即为抽象类,只许申明不许实现
int max(int x,int y)
return x>y?x:y;
}
抽象类不能用new 运算符创建对象,故不能用final 和abstract同时修饰一个类。
子类继承抽象类必须实现其方法,除非子类本身也是抽象类。
抽象类中可以存在变量,而接口中不允许存在变量(个人理解,接口中的必须要实现,所以有变量必须为常量)
第一个点就子类的继承性
1.子类与父类在同一包中的继承性
子类自然继承父类中非private成员变量(四种权限:public protected 友好访问权限 private),非private的方法作为自己的方法,其中的访问权限不变
2.子类与父类不在同一包中的继承性
父类中的private和友好权限的成员变量不会被子类继承,其规则如上
第二个点是成员变量的隐藏和方法重写
子类隐藏的成员变量:子类声明变量时候变量名可以与父类重名==》子类对象和子类定义的方法使用了便是重新声明的成员变量
==》子类继承的方法所操作变量是被子类隐藏或继承的成员变量
方法重写:方法名字,参数个数,参数类型必须和父类的方法完全相同(也称方法覆盖),无法操作被子类隐藏的成员变量和方法
子类的构造方法中必须有父类的构造方法,使用super调用父类构造方法,super()说明父类使用默认的构造方法,
无法操作被子类隐藏的方法和变量
第三点abstract类与方法
关键字abstract修饰的类即为抽象类,可以无须含有抽象方法
abstract class A{
abstract int min(int x ,int y);//含有抽象方法的类即为抽象类,只许申明不许实现
int max(int x,int y)
return x>y?x:y;
}
抽象类不能用new 运算符创建对象,故不能用final 和abstract同时修饰一个类。
子类继承抽象类必须实现其方法,除非子类本身也是抽象类。
抽象类中可以存在变量,而接口中不允许存在变量(个人理解,接口中的必须要实现,所以有变量必须为常量)
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树