Java回炉之语言基础

Java回炉之语言基础

DOS命令

dir(directory):列出当前目录下的文件以及文件夹
md (make directory) : 创建目录
rd (remove directory): 删除目录
del (delete): 删除文件,删除一堆后缀名一样的文件*.txt

java编译过程

java编译过程

path和classpath的区别

  • path环境变量里面记录的是可执行性文件,如.exe文件,对可执行文件先在当前路径去找,如果没找到就去path环境变量中配置的路径去找
  • classpath环境变量里记录的是java类的运行文件所在的目录

关键字表

java关键字表
java关键字表

数据类型

java数据类型

位运算

java位运算说明
java位运算示例

算数优先级

java算数优先级

内存划分

  • 栈 存储局部变量
  • 堆 存储new出来的东西
  • 方法区 (面向对象部分讲)
  • 本地方法区 (和系统相关)
  • 寄存器 (给CPU使用)

类的初始化过程

  • 加载Student.class文件进内存
  • 在栈内存为引用开辟空间
  • 在堆内存为学生对象开辟空间
  • 对学生对象的成员变量进行默认初始化
  • 对学生对象的成员变量进行显示初始化
  • 通过构造方法对学生对象的成员变量赋值
  • 学生对象初始化完毕,把对象地址赋值给引用变量

例:
java对象初始化过程内存图解

static关键字特点- 随着类的加载而加载

  • 优先于对象存在
  • 被类的所有对象共享
  • 可以通过类名调用

根据java文件生成帮助文档

javadoc -d 目录 -author -version ArrayTool.java

代码块

在Java中,使用{}括起来的代码被称为代码块,根据其位置和声明的不同,可以分为局部代码块,构造代码块,静态代码块,同步代码块(多线程讲解)。
- 局部代码块
在方法中出现;限定变量生命周期,及早释放,提高内存利用率
- 构造代码块
在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行
- 静态代码块
在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且值执行一次。

static与final成员变量


  • static在定义时赋值,随类加载,代码中一行定义并赋值。
  • final只能赋值一次,创建对象时加载,赋值代码写到构造代码块中。

在内部类使用final传递变量,传递的是值的拷贝。
如果是基本类型变量,则传递的是变量值的拷贝(如final int value = 10;在内部类中使用的将是“10”这个值,value的生命周期不受内部类影响)。
如果是引用类型变量,则传递的是引用的拷贝。这里把引用当做指针比较好理解,final Person p = new Person();这里p的值即是后面new Person()的地址,内部类中传递的为p的值的拷贝即地址,p的声明周期不受内部类影响,地址为final不可变,但地址中的内容可变。

多态&继承

  • 编译看左边,运行看右边。

接口

  • 接口中的变量默认且只能是静态常量(默认修饰符public static final)
  • 接口没有构造方法
  • 接口成员方法默认且只能public static
  • 接口与接口是继承关系,可以多继承

内部类

  • 成员内部类:外部类的最外层
  • 局部内部类:外部类的方法中

静态导入

可以在代码中导入到方法级别。首先import static java.lang.Math.abs,然后就可以在方法中使用abs()来代替Math.abs()了。注意只能导入静态方法。

可变参数

public void method(int ... s){
    for(int a : s){}
}

底层实现为int[] s,即数组。注意与数组同类型的变量参数需要定义在数组前:public void method(int a,int ... s){}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值