JAVA基础知识总结:九

时间:2023-03-10 04:46:59
JAVA基础知识总结:九

二。面向对象特性之继承

1.什么是继承?
如果两个或者两个以上的类具有相同的属性和方法,我们可以抽取一个类出来,在抽取出来的类中声明各个类中公共的部分
被抽取出来的类-------父类,基类,超类
两个或者两个以上的类-----子类,派生类
二者之间的关系:子类 继承自 父类(基类)

2,语法
访问权限修饰符 class 子类类名 extends 父类类名 {
}

a.当子类继承自父类的时候,子类对象可以访问父类中的成员变量
b.子类同样可以调用父类中的方法
c.一个父类,可以有多个对应的子类
d.一个子类,只能有一个父类(单继承)

3.super
this是对当前对象的引用
super是对父类对象的引用

1》super.属性:访问父类中的成员变量
2》super.方法:访问的是父类中的方法
3》super():访问的是父类的构造方法
注意:a.super()必须出现在子类构造方法的第一行语句
b.super()具体调用的是父类中的哪个构造方法,取决于所传的参数

二、访问权限修饰符
1.访问权限修饰符:public\private\protected\default
2.default:如果没有添加访问权限修饰符的话,其实就是default权限(注意:default一定不能写出来)
3.修饰类:类的访问权限修饰符只有两个:public和default

访问权限修饰符 同包 不同包
public 可以 可以
default 可以 不可以

说明:
public修饰的类在不同包下可以访问,但是需要注意:
a.进行导包(需要使用类的全限定名,例如:包名.包名.类名;import com.b.Student;)
b.如果在不同包中有相同名字的类,在使用的时候一定要注意使用类的全限定名

4.修饰属性:四个访问权限修饰符都能用
权限大小:public>protected>default>private

访问权限修饰符 本类 同包不同类 子类(不同包) 不同包
private 可以 不可以 不可以 不可以
default 可以 可以 不可以 不可以
protected 可以 可以 可以 不可以
public 可以 可以 可以 可以

三、方法重写
1.重写规则
在具有继承关系的两个类中,子类中的方法如果满足了以下条件,就说子类重写了父类的方法
a.方法名相同
b.参数相同
c.子类方法的返回值类型必须和父类方法的返回值类型相同,或者是父类方法返回值类型的子类型
d.子类方法的访问权限必须大于等于父类方法的访问权限

2.final关键字
1》final修饰类:这个类不能被继承
2》final修饰方法:这个方法不能被重写
3》final修饰变量

当final修饰一个成员变量的时候,系统不会再给这个成员变量赋初始值,所以在使用之前需要我们手动进行初始化
静态成员变量:在声明变量的时候或者在静态代码块中进行初始化
非静态成员变量:在声明变量的时候或者构造代码块中或者构造方法中直接初始化
局部变量:
注意:final修饰基本数据类型和引用数据类型的区别?
当final修饰基本数据类型的时候,不能再对基本数据类型变量进行赋值
当final修饰引用数据类型的时候,引用类型变量不能再被重新赋值,但是可以改变引用变量所指向的内容

总结:a.final和访问权限修饰符没有关系,是相互独立的
b.对于基本数据类型变量,命名字母全部大写,不同单词之间使用下划线进行分隔
c.对于引用数据类型变量,命名不需要遵循常量命名规范

四、Object类

是Java中所有类的父类,在其中定义了一些常用的方法
1》toString()
2>getClass()
3>hashCode()
4>equals()