Java基础

JavaSE

Java基础

cs

JDK开发工具包
JRE运行环境
强类型语言,区分大小写

HelloWorld

public class Hello{
    public static void main(String[] args){
        System.out.println("Hello World!");
    }
    
}

javac 编译生成class文件
java 运行class文件


基础语法

注释

行内注释 //

多行注释 /* (要注释掉的代码)*/

文档注释 /** */ javadoc生成帮助文档


关键字

1 abstract //抽象方法,抽象类的修饰符

2 assert //断言条件是否满足

3 boolean //布尔数据类型

4 break //跳出循环或者label代码段

*5 byte //8-bit 有符号数据类型
6 case //switch语句的一个条件

7 catch //和try搭配捕捉异常信息

8 char //16-bit Unicode字符数据类型

9 class //定义类

10 const //未使用

11 continue //不执行循环体当次剩余部分

12 default //switch语句中的默认分支

13 do //循环语句,循环体至少会执行一次

14 double //64-bit双精度浮点数

15 else //if条件不成立时执行的分支

16 enum //枚举类型

17 extends //表示一个类是另一个类的子类
18 final //表示一个值在初始化之后就不能再改变了

//表示方法不能被重写,或者一个类不能有子类

19 finally //try 语句不管是否发生异常都要执行的语句块

20 float //32-bit单精度浮点数

21 for //for循环语句

22 goto //未使用

23 if //条件语句

24 implements //表示一个类实现了接口

25 import //导入类

26 instanceof //测试一个对象是否是某个类的实例

27 int //32位整型数

28 interface //接口,一种抽象的类型,仅有方法和常量的定义

29 long //64位整型数

30 native //表示方法用非java代码实现

31 new //创建新的类实例并分配内存

32 package //一系列相关类组成一个包

33 private //表示私有字段,或者方法等,只能从类内部访问

34 protected //表示字段只能通过类或者其子类访问,子类或者在同一个

包内的其他类

35 public //表示共有属性或者方法

36 return //方法返回值

37 short //16位数字

38 static //表示在类级别定义,所有实例共享的

39 strictfp //浮点数比较使用严格的规则

40 super //表示基类

41 switch //选择语句

42 synchronized //表示同一时间只能由一个线程访问的代码块

43 this //表示调用当前实例,或者调用另一个构造函数

44 throw //抛出异常

45 throws //定义方法可能抛出的异常

46 transient //修饰不要序列化的字段

47 try //表示代码块要做异常处理或者和finally配合表示是否抛出异常都执行finally中的代码

48 void //标记方法不返回任何值

49 volatile //标记字段可能会被多个线程同时访问,而不做同步

50 while //while循环


+访问控制

private 私有, protected 保护,

public 共享.

+类、方法和变量修饰符

abstract 摘要, class 类, extends 扩允,

final 结局,

implements 工具, interface 接口,

native 本地, new 新, static 静态,

strictfp,

synchronized 同步,transient 短暂,

volatile 易失.

+程序控制语句

break, continue,

return, do, while, if, else,

for, instanceof, switch, case,default,

+错误处理

catch 捕获, finally 最后, throw 投试,

throws 投试, try

尝试

+包相关

import 输入, package 包.

+基本类型

boolean 布尔型, byte 字节型,

char 字符型, double 双精度,

float 浮点, int 整型, long 长整型, short

短整型

+变量引用

super 特殊, this 这个, void

无值

除了这48个关键字以外,还有3个语法保留字:

null 空, true 真, false 假


数据类型

基本数据类型

序号 数据类型 位数 默认值 取值范围
1 byte(位) 8 0 -2^7 - 2^7-1
2 short(短整数) 16 0 -2^15 - 2^15-1
3 int(整数) 32 0 -2^31 - 2^31-1
4 long(长整数) 64 0 -2^63 - 2^63-1
5 float(单精度) 32 0.0 -2^31 - 2^31-1
6 double(双精度) 64 0.0 -2^63 - 2^63-1
7 char(字符) 16 0 - 2^16-1
8 boolean(布尔值) 8 false true、false
序号 数据类型 位数 默认值 取值范围 举例说明
1 byte(位) 8 0  -2^7 - 2^7-1 byte b = 10;
2 short(短整数) 16 0 -2^15 - 2^15-1 short s = 10;
3 int(整数) 32 0 -2^31 - 2^31-1 int i = 10;
4 long(长整数) 64 0 -2^63 - 2^63-1 long l = 10l;
5 float(单精度) 32 0.0 -2^31 - 2^31-1 float f = 10.0f;
6 double(双精度) 64 0.0 -2^63 - 2^63-1 double d = 10.0d;
7 char(字符) 16 空 0 - 2^16-1 char c = 'c';
8 boolean(布尔值) 8 false true、false boolean b = true;

整数(默认int)

byte 占用1字节

short 占用2字节

int 占用4字节

long 占用8字节

浮点数(默认double)

float 占用4字节

double 占用8字节

字符(注意编码格式)

char 占用2字节

布尔值

boolean 占用1字节

引用数据类型

接口

数组

类型转换

自动类型转换(低转告)

强制类型转换(高转低)

变量和常量

定义

作用域

类变量

实例变量

局部变量


常量

命名规范

1.见名知意

2.变量,方法,使用驼峰命名

3.类,的首字母大写

4.常量,大写+下划线

5.尽量不使用拼音命令

运算符

算术运算符

      • / % + ++ --

赋值运算符

=

关系运算符

< >= <= == !=

逻辑运算符

&& || !

位运算符

& ^ ~ >> << >>>

条件运算符

?:

扩展运算符

+= -= *= /=

包机制

域名倒写

package

import


JavaDoc

JDK帮助文档

JavaDoc

@author 作者

@Version 版本

@Since 最早支持Java版本

@param 参数

@return 返回的值

@throws 抛出的异常

public class HelloWorld{
/**
    *@author 孙学超
    *@param args 命令行参数
    *@Since 1.0
    *throws 没有异常报出
*/
    public static void main(String[] args{
        System.out.println("Hello World!");
    }
}


流程控制

顺序结构

自上而下的执行,程序默认的结构

选择结构

if 单选择结构

if-else 双选择结构

if-else if-else 多选择结构

switch-case-case-default

循环结构(尽量避免死循环)

while

do-while

for

for-each

方法

什么是方法,函数

方法的定义

  1. 修饰符
  2. 返回值
  3. 方法名(参数名)

方法调用

  1. 类名.方法
  2. 对象.方法

方法重载

  1. 名字相同,参数列表不同

命令行传参

给main方法传递参数

可变长参数

...
必须放在最后一个参数


递归

调用自身

数组的定义

数组的定义

  1. 必须是同一个类型

数组的使用

1.通过下标拿到值

2.增强for循环遍历

3.异常处理

二维数组

Arrays工具类

十大排序算法

  1. 冒泡排序
  2. 选择排序
  3. 插入排序
  4. 快速排序
  5. 归并排序
  6. 希尔排序
  7. 堆排序
  8. 桶排序
  9. 计数排序

10.基数排序

面向对象

什么是面向对象

类与对象

  1. 类是对象的抽象
  2. 对象是类的具体

构造方法
1.构造的重载
2.构造器,默认的无参构造,如果定义了有参构造就必须手动再加一个无参构造
3.单例模式,需要构造器私有

内存

三大特性

封装

属性私有,get,set

继承

  1. extends
  2. Object
  3. 子类拥有父类的全部特性
  4. 方法重写
    5.this,super
  5. Java是单继承,只能继承一个父类

多态

  1. 父类的引用指向子类对象
  2. instanceof关键字

修饰符

  1. public
  2. protected
  3. private
  4. static
  5. final
  6. abstract

接口

  1. interface
  2. 约束,只能定义方法名,子类实现接口,必须重写其中的方法,只有一个函数的接口叫做函数式的接口,可以使用Iambda表达式简化
    3.一个类可以实现多个接口

内部类

  1. 局部内部类
  2. 静态内部类
  3. 匿名内部类
  4. 成员内部类

异常(Throwable)

  1. Exception

1.1 运行时异常

1.2检查型异常

  1. Error

2.1. AWT错误

2.2. JVM错误

五个关键字

  1. try()
  2. catch(){} 先小后大
  3. finally{}
  4. throw 手动抛出异常
  5. throws 方法抛出异常

自定义异常

继承Exception类

posted @ 2021-07-25 10:23  夏至Xz  阅读(38)  评论(0编辑  收藏  举报