Java基础9一面向对象
继承
1、特点
a) 要有一定的层次结构,并且具备可传递性。
b) 判断两者之间是否有继承关系通过is-a来判断。
c) 子类继承了父类,那么子类就继承了父类中所有的属性和方法,但是父类中的私有属性和构造方法除外。原因:父类中的私有属性是属于父类,子类无法继承,父类中的构造方法是创建父类对象的,子类无法继承。
d) 子类继承了父类,但是子类也可以拥有自己的属性和方法。
e) 在java中只支持单一继承,即一个子类只能继承一个父类,但是一个父类可以有多个子类。
f) 作用:提高代码的重用性。
g) 在java中通过extends 关键字实现继承,语法如下:
[访问修饰符] class 子类名称 extends 父类名称{
}
2.super关键字
A、前提:super关键字只能用在有继承关系的子类中。
B、作用:super表示对当前类父类对象的引用(也就是说super表示的是一个父类对象)
C、用法:
(a)调用父类中的属性:super.属性名称;
(b)调用父类中方法:super.方法名称(参数列表);
创建子类对象时,一定会先执行父类中的构造方法,创建父类对象,然后再调用子类的构造方法创建子类对象。
(c)super关键字的第二大用法:
如果子类构造方法没有显式调用超类构造方法,那么会调用超类的默认构造方法。
如果超类没有默认构造方法,而且子类构造方法又没有显示调用超类的其它构造方法,那么编译将报错。
若要在子类构造方法中调用超类构造方法,则在子类构造方法的第一条语句用关键字 super来调用。
语法为:
a) super() ; //显式调用超类的无参构造方法
b) super(实参列表) ; //显式调用超类的带参构造方法
3.访问修饰符
a) private只能在本类中访问,一般用来修饰属性
b) 默认的可以同一类或者同一个包中的类被访问
c) protected同一个类同一个包中的类,或者不同包中的子类访问,但是在不同包中的子类访问父类protected修饰的属性时,需要通过子类对象访问。
d) public用来修饰类,方法,表示公共的,一般类用public 或默认的访问修饰符修饰。
4.final关键字
final修饰的变量(成员变量或局部变量)的值不能改变,即等同于常量,在定义时就必须要进行初始化,之后就再也不改变它的值了。
final可以修饰方法的参数,叫最终参数。调用这个方法时给最终参数赋值之后,在方法体内再也不能改变它的值了。
final修饰的方法不能被子类重写。
final修饰的类不能被继承。
最新文章
- Linux字符界面安装VMware tools
- WCF账户密码认证
- 内部类访问的局部变量必须加final
- C# 拓展方法
- 【PYTHON】二维码生成
- 很不错的NGINX URL重写实例
- VB.NET 数组的定义 动态使用 多维数组
- MSG 结构
- 做了个新的UWP类库 Sharp2D
- Linq之关键字基本查询
- VIM的字符编码设置
- 201621123043 《Java程序设计》第3周学习总结
- 项目分层-----MVC
- JAVA学习笔记 (okHttp3的用法)
- 另类P、V操作问题-详细图解
- JMS Session session = connection.createSession(paramA,paramB) 两个参数不同组合下的含义和区别
- 如何绘制UML图?
- 【winform】DataGridView控件[表格]
- jeb 下载
- php json数据处理中文编码
热门文章
- Python基础(二)数据类型
- php进程daemon化的正确做法
- oracle启动停止命令
- UOJ #131 BZOJ 4199 luogu P2178【NOI2015】品酒大会 (后缀自动机、树形DP)
- Spring 单例模式和多例模式
- (22)Spring Boot 拦截器HandlerInterceptor【从零开始学Spring Boot】
- LightOJ1234 Harmonic Number
- 导致“mysql has gone away”的两种情况
- BIEE11G Rpd合并
- expdp impdp 数据库导入导出命令具体解释