写本博客的是想记录一下,学习6个月的java以后可以找到什么样的工作
时间:2022/4/7
本节课概念比较多,代码比较少,主要理解概念,格式
继承
关键字:extends
格式:public class 子类 extends 父类{}
哪些内容不能继承:构造方法不能继承得自己写。
继承的时候优先访问子类的变量和方法,如果子类没有在访问父类。
例子:省
继承的意义:提高代码的复用率
this和super的使用
this.变量表示访问当前类的成员变量,this.方法名()表示访问当前类的方法。
super.变量标识访问父类的成员变量,this.方法名()便是访问父类的方法。
this和surper访问构造方法的作用
this()表示访问当前类的构造方法,super()标识访问父类的构造方法。
在开发中,最常见的写法就是:
子类的空参调用父类的空参
子类的有参调用父类的有参
注意事项
如果构造方法中没有手动写this或super,就默认有一行super()。
this和super访问构造方法必须写在构造方法的第一行,且只能出现一个。
方法重写
概念:子类出现完全相同父类的方法,改变方法体的实现
重写和重载的区别:
重写:重写类与父类有相同的方法时
重载:在同一类下,同一个方法参数不同,且与返回值无关
注:可以注解@overried检查重写。
继承的注意事项
1.java只能单继承,一个类只能有一个父类
2.继承是一种属于关系,要满足面向对象
抽象类
格式
类:public abstract class 类名(){}
方法:public abstract 返回值 方法名();
作用
抽象类中的抽象方法相当于是给子类定规矩,父类中的抽象方法要求子类必须重写
抽象类里面的成员:
可以写构造方法,成员变量,成员方法
注意事项:
1.抽象类中可以有抽象方法,也可以没有抽象方法。
2.有抽象方法的类,一定是个抽象类。
3.抽象类不能创建对象(不能实例化)。
4.抽象类一定是个父类,抽象类的子类必须重写抽象类的所有抽象方法,或者子类也是个抽象类。
5.抽象类不能创建对象,抽象类却有构造方法,构造方法用来干嘛的?
因为抽象类中有成员变量,抽象类的构造方法可以被子类调用给变量赋值。
6.抽象类大家在写代码时候,不用纠结写不写抽象
现在如果题目明确写了让你用你就用,如果没有要求用你就可以不用。
final关键字
final表示最终的,可以用来修饰变量, 方法, 类
作用在变量:
变量就变成常量,不能更改。
作用在方法:
不能被重写。
作用在类上:
不能被继承,不能有子类。
数据类型(2种):
基本数据类型变量保存的是[值]
引用类型变量保存的是[地址值],不可以赋值(地址),可以改值
总结:
面向对象这两天都是在学习语法规则!!!目的就是以后写代码如果报错了你要能解释为啥报错!!!
今天我们其实没有什么代码,所有的代码都是在为我们理解语法!!
我们一起把语法罗列一下:
继承
继承的关键字是什么?
extends
继承的好处是什么?
提高代码的复用率
父类的什么内容不能被子类继承?
构造函数
this和super关键字是用来访问什么的?
this用来访问当前类,super用来访问父类
什么叫方法重写?
同一个方法,对方法体的内进行修改
一个类能不能继承多个父类?
不能
**抽象**
抽象的关键字是什么?
abstract
抽象类中能不能没有抽象方法?
可以用
抽象方法能放在什么类中?
抽象类中
抽象类能不能创建对象?
不能
抽象类有没有构造方法?
可以
抽象类对他的子类有什么要求?
必须复写其父类的方法或者也是抽象类
**final**
final修饰类有什么作用?
不能被继承
final修饰方法有什么作用?
不能被复写
final修饰变量有什么作用?
基本类型:byte char int long short double float boolean
引用类型:
类 数组 String 接口