Java-基础知识

Java语言特点

  • 面向对象语言
  • 跨平台
  • 解释执行
  • 健壮&安全的语言(代码加载有安全检查)
  • 支持多线程
  • 面向网络
  • 动态性

Java运行环境(JRE)

  • 类加载器 -> 加载代码
  • 字节码校验器 -> 检验代码
  • 解释器 -> 执行代码

JDK的设置

将JDK的路劲设置到系统环境变量中,以方便后续的java流程中的工具模块使用(Path)

java基础编译流程

  • 使用编辑器创建并编辑*.java源代码文件
  • 使用javac工具对代码文件进行编译 生成字节码(.class) => javac fileName.java
  • 使用java工具执行程序 => java fileName

*同一个java源文件中有且仅有一个带public修饰符的类,且源文件名必须与public修饰符的类名一致

标识符

  • 规则
    以字符(包括汉子),下划线,$为开始
    不能使用Java保留字作为标识符
    大小写敏感

关键字

  • 一些用于特殊用途的单词,称为关键字或者保留字,不能作为标识符使用

分隔符

  • 圆点’.’ 访问对象成员
  • 分号’;’ 语句结束符
  • 空格’ ’ 缩进 或 字符
  • 花括号 ‘{’ ‘}’ 代码块

注释

  • 单行注释 //
  • 多行注释 /**/
  • 文档注释 /** */

数据类型

  • 简单数据类型
类型类型分类/说明
byte整数类型
short整数类型
int整数类型
long整数类型
float浮点类型
double浮点类型
char字符类型
boolean布尔类型

*自动转换次序
byte -> short -> char -> int -> long -> float -> double

  • 复杂类型(引用类型)
类型类型分类/说明
class类类型
interface接口
[]数组
enum枚举

变量

变量需要先声明,后使用

//声明格式
类型 变量名[=值][,变量名[=值]];

*同一个范围内不能有重名变量

运算符

  • 算术运算符
运算符类型说明
++一元运算自增运算
一元运算自减运算
-一元运算反数
+二元运算加法运算
-二元运算减法运算
*二元运算乘法运算
/二元运算除法运算
%二元运算取余运算(模运算)
~位运算位求反
>>位运算带符号右移
<<位运算带符号左移
>>>位运算无符号右移
&位运算与运算
|位运算或运算
^为运算异或运算

标准输入输出

  • print()

  • println()

  • printf()

  • (char)read()

  • new BufferedReader(InputStreamReader(System.in)) => readLine

  • new Scanner(System.in)

条件选择

  • if
  • switch

循环

  • for
  • while
  • do while

循环控制

  • continue
  • break

//类定义格式
[修饰符] class 类名 [extends 父类名] [implements 接口列表]
{
    //属性
    修饰符 类型 属性名
    //方法
    修饰符 返回类型 方法名(参数列表){
        //方法的具体实现
    }
}

*属性中的类变量属于类成员,方法中的静态方法属于类成员
*属性中的实例变量属于对象成员,方法中的实例方法属于对象成员

变量作用域

  • 成员变量
  • 方法中的局部变量、参数
  • 语句块中的局部变量
  • 异常处理参数(局部变量)

*当存在不同作用域同名变量时,将采取就近原则确认实际使用的变量

  • 采用分层结构
  • 同一个保重不能有同名的类
  • 默认系统会为每一个源文件创建一个无名包

使用package语句自定义包

//须将此行安置在源文件的第一行
package packageName;

多态

  • 精确匹配优先于转换匹配
  • 固定参数优先于可变长参数

多线程

  • 继承Thread方法
  • 实现Runnable接口

调度策略:抢占式调度

  • 当前时间片用完
  • 使用yield()或sleep()方法主动放弃
  • 进行I/O访问,进入阻塞状态,或者等候wait()方法
  • 有高优先级线程参与调度

以上4种情况,当前线程将放弃cpu占用

优先级

  • Thread.MIN_PRIORITY = 1 最低优先级
  • Thread.MAX_PRIORITY = 10 最高优先级
  • Thread.NORM_PRIORITY = 5 默认优先级

泛型

  • 泛型的类型参数只能是类类型
  • 泛型的参数可以有多个
  • 泛型的参数类型可以使用extends语句,进行类型范围限制
  • 泛型的参数类型可以使用通配符
  • 泛型的类型可以使用super
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值