Skip to content

Java基础

数据类型

img

image-20230625151822640

String类

String类能否被继承:

不能被继承,因为String类有final修饰符,被final修饰的类是不能被继承的

final修饰的特点:

  1. 修饰类:不可被继承,是最终类
  2. 修饰方法:该方法不能被子类重写覆盖
  3. 修饰变量:
  4. 修饰基本类型变量:初始化后不能被修改,称为常量
  5. 修饰引用类型变量:初始化后不能再让其指向另一个对象,但是内容可以被修改

String底层使用的是char数组还是byte数组:

jdk 1.8 之前,底层使用char类型数组

jdk 1.9 之后,底层使用byte类型数组

因为发现人们使用的字符串值是拉丁字符居多,只需要一个字节就可以存储

类加载顺序

  1. 首先加载父类的静态内容:静态字段、静态语句块
  2. 子类的静态字段、静态语句块
  3. 父类的普通变量和语句块
  4. 父类的构造方法
  5. 子类的变量初始化、语句块
  6. 子类的构造方法

面向对象特性

四大特性:

  1. 封装:保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的“高内聚、低耦合”

  2. 提高代码的复用性

  3. 隐藏了实现细节,提供api;提高了安全性

  4. 继承:在一个现有类的基础上,构建一个新的类,构建的新的类被称为子类

  5. 提高代码的复用性

  6. 让类与类之间产生了关系,多态的前提

缺点:类和类之间产生了耦合,不符合OOP开发原则

  1. 多态:同一个行为具有多种不同的形态

使用多态的三个前提:

  • 语法上:父类引用指向子类对象
  • 必须有继承或者实现关系
  • 必须有方法的重写

  • 抽象