java基础知识回顾

发布于:2023-01-22 ⋅ 阅读:(314) ⋅ 点赞:(0)

java基础知识回顾:

主要是记录 java的一些基础知识,之前学习过,但是很长时间没有使用,这里回顾一下

  • 基本数据类型
  • 面向对象

基本数据类型:

在这里插入图片描述
java 的8大基本数据类型,数值类型的默认值都是0,boolean默认为false char默认空‘’

整数类型包括:byte int short long,他们的区别在于 数据范围不同,整数型默认 int。
long:在声明一个long型变量时,需要在数值后面加一个L:

long num = 100L;

浮点类型:double和float都是 用来声明小数或者数值范围比较大的数值
float:在声明一个float变量时,需要使用F标记(大小写均可),因为创建小数默认是double型,double的数值也可以在后面用D标识,例

 float num = 100.22f;
 double num2 = 5.0;
 double num3 = 5D;

字符类型:char,用来表示单个字符,并且字符使用单引号包围

 char c = 'A';

boolean型:只有2个值 true、false 创建一个boolean变量,默认是false,并且在java中 1 和 0 标识 true false ,但是不能与数值型数据类型做转换

boolean flag; //默认false
flag = true;

数据类型之间是可以相互转换的,分为
自动转换:数据范围小的数据类型可以自动转换为数据类型大的数据类型

1.参与运算的数据类型不同,则需要转换成同一种数据类型进行运算
2.转换按照数据长度增加的方向进行转换(数据范围小的 转成数据范围大的),老保证数据的精度不降低
3.所有的浮点运算都是以双精度进行的
4.char和short进行运算,必须要先转换成int
char c = 'A';
int num = c ;
System.out.Println(num); //得到的结果是 65 A在ascII码中是65

强制转换:强制将一种数据类型转换为另一种数据类型

double pai = 3.1415926;
int paiInt = (int)pai;//强制转换
System.out.Println(paiInt);// 3

关于运算, ++ 和 –
变量在前运算在后的,例如 a++,a–,是先进行等号左边的赋值,再进行运算 ,变量在后的,是先进行自身运算再给等号左边赋值。

int a = 10
int ab = a++;//a++是先赋值给等号右边的变量,再进行自增
System.out.println(ab);// 10
System.out.println(a);// 11

三元运算: 某个表达式a?b:c 如果a是true则执行b,否则c

面向对象:

面向对象:Object -Oriented-Programming 简称 OOP
面向对象的特性:继承 封装 多态

  • 封装
    private 修饰成员变量
    对于已经被private 修饰的变量 使用 get set方法来取值和赋值
  • 继承
    继承使用关键字 extends
    class 子类 extends 父类 {

     }

子类可重写父类方法(子类方法名称与父类方法名称一致)
使用父类的方法可用super关键字
父类被private修饰的方法 参数 不能被子类继承
一个类只能有一个父类
子类和父类的成员变量重名时 使用的是子类的成员变量
子类在初始化时,会初始化父类的构造方法

  • 多态

杂项:

  • 抽象类
    使用abstract修饰的类是抽象类,包含抽象方法的类, 抽象方法是 abstract修饰的方法,并且没有方法体:
    抽象类中并不是所有方法都是抽象方法。
public abstract test();

抽象方法类似于接口,但是又不同于接口,一般是继承的形式使用抽象类,如果要实现接口则需要实现接口中所有的方法,而抽象方法不用重写所有的方法,但是必须要重写抽象类中所有的抽象方法

抽象类中不一定含有抽象方法,但是有抽象方法的类一定是抽象类
  1. 访问权限
    在这里插入图片描述

  2. 内部类:在类内部嵌套的类

  • 普通内部类:
    类似于普通的类, 调用方式:
    在这里插入图片描述

  • 静态内部类:
    是用static修饰的内部类
    在这里插入图片描述在这里插入图片描述

  • 局部内部类:
    方法体内的内部类
    在这里插入图片描述
    在这里插入图片描述

  • 匿名内部类:
    没有名称的内部类
    使用匿名内部类可以重写接口的方法如下图:
    在这里插入图片描述

使用lambda表达式,也可以实现使用匿名内部类 来实现接口,

在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到