【Java_SE】超详细_基础复习

1:标识符

  • 由数字,字母,下划线,美元符号组成,但是不能以数字开头;

2:基本数据类型

  • byte 1

  • short 2

  • int 4

  • long 8

  • float 4

  • double 8

  • char 2

  • boolean -> false,true

3:引用数据类型

  • String(字符串:Java中字符串不是以\0结束,当遇到+表示拼接)

  • 数组(Array)

  • 类(class)

  • 接口(interface)

4:类型转换,类型提升

  • 显示类型转换:叫做强制类型转换,可能造成精度丢失

  • 隐式类型转换:不相干类型不能相互转换,强制转换也不行

  • 运算时,小类型会提升为大类型(先提升再运算);在参与运算时,小于4个字节的进行提升,否则无法编译通过

5:运算符

  • % 两边可以是小数

  • / 和 % 右操作数不能是0

  • 逻辑运算符(表达式两边得是:布尔表达式) -> &&,||,!

  • 位运算符(位表示:二进制数的位) ->

    1:<< 左移(相当于乘法,*2^n[n表示移动次数])-> 补0;

    2:>> 右移(相当于除法,/2^n) -> (符号位:1表示负数,0表示正数) 符号位为1就补1,符号位为0就补0;

    3:>>> 无符号右移(除法,/2^n)补0;

  • 布尔表达式1 ? 表达式2:表达式3(表达式1必须是布尔表达式)

6:选择语句

  • if,else if -> 括号内必须是:布尔表达式

  • switch -> 不能作为switch的参数只有4种:float,double,long,boolean

7:循环语句(迭代语句)

  • while

  • for

  • do{循环体}while();会先循环一次,再进行判断

8:选择/循环的关键字

  • continue 结束本趟continue以下循环

  • break 跳出当前循环

  • return 结束当前方法

9:方法

  • 方法定义:public static 返回值 方法名(形式参数列表){方法体}

  • 方法重载:方法名一样,参数列表不一样(个数,类型,顺序),返回值不影响方法重载

  • 方法调用:递归自己调用自己

10:一维数组

  • 元素类型[] 数组名 = {元素,元素,...};

  • 元素类型[] 数组名 = new 元素类型[]{元素,元素,...};

  • 数组是引用类型,数组元素是对象;数组在栈上存放的是引用所指向对象的地址,数组指向的对象在堆上开辟空间(局部变量存在栈上);

  • Java中只有传值,没有传址(地址也是一个值);1:传一个基本类型->形参值改变不能改变实参值;2:传一个引用类型->形参值改变可能改变实参值,改变指向地址不能改变实参,但是改变指向对象就可以改变实参;

11:二维数组

  • int[行][列] 数组名

  • 可以省略列,但不能省略行

12:数组拷贝(copyOf)/克隆(clone)

  • 数组拷贝可以控制拷贝长度;数组克隆直接原样克隆,不能改变长度。数组长度:数组名.length

  • Arrays.copyOf(要拷贝数组名,要拷贝的长度) -> Arrays是一个类,copyOf()是一个方法

  • 要克隆的数组名.clone();数组克隆不能改变要克隆的长度,只能原样复制

13:类/对象

  • 类:是描述一个对象的

  • 对象:是类产生的一个实体

  • 构造方法:含参数构造方法和不喊参数构造方法,都是对成员变量进行初始化的

  • this引用 -> 1:this.成员变量 当前类的成员变量;2:this.成员方法 当前类的成员方法;3:this(参数值1,参数值2,...)使用在构造方法中,并放在构造方法的第一句,表示的是:在无参构造函数中调用含有参数的构造函数

14:封装/继承/多态

  • public(哪儿都可以使用)

  • private(仅当前类可以使用)

  • protected(可以在当前包使用,也可以在不同包的子类使用)

  • 封装(private):一个类的某些方法被private修饰,仅对外公开借口来和对象进行交互;

  • 继承(extend):将要使用的共性单独写成一个类,以便于代码的复用。子类会将父类的属性和方法继承过来(继承的是对象),当父类被static所修饰的方法不会被继承(被static所修饰的属于类),子类也不能继承父类的构造方法;被final修饰的类不能被继承

  • 代码执行顺序:父类静态->子类静态->父类的实例->父类的构造->子类的实例->子类的构造;

  • 多态:不同的对象去完成同一个行为产生了不同的效果。多态实现的条件(❓)->1:继承、向上转型、重写

    向上转型(❓):父类引用子类对象(子类 对象1 = new 子类();父类 对象 = 对象1; -> 此时,对象就发生了向上转型,此时对象只能调用父类的方法,不能调用子类的方法)

    向上转型的三种:1:直接赋值;2:方法参数的传递;3:方法返回值。

    重写(❓):在子类中写一个和父类一样的方法,也称为覆盖,覆写;被static或者private所修饰的方法都不能被重写;当子类中重写了父类方法,调用此方法时,只能调用子类中的这个方法。

  • 代码执行顺序:父类实例->父类构造->子类实例->子类构造;

15:static关键字

  • 类名 对象名 = new 类名();

  • static修饰成员变量(静态变量) -> 被static修饰的变量不属于对象,而属于当前类;

  • static修饰成员方法(静态方法) -> 静态方法中只能访问静态变量,只能调用静态方法;

16:super/this关键字

  • super:指定访问父类的成员变量和方法;

  • this:访问当前类的成员变量和方法(子类继承父类时,this会先访问子类的,子类没有再访问父类的);

  • 1:super.成员变量 访问父类成员变量;2:super.成员方法 访问父类成员方法;3:super()调用父类构造方法,放在构造函数第一句;

  • super()和this()不能同时存在,因为都需要放在构造函数第一句;

后面还有好多没复习的,复习到了再加上去 !!!

  • 21
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值