小肩膀安卓逆向--007-013

007.JDK的安装

  1. JRE与JDK
    jre:Java的运行环境,包含了Java虚拟机和库类
    jdk:Java开发工具集,jre基础上增加了一些开发工具
  2. JDK支持
    主要版本8和11,他俩是长期支持的
  3. JDK下载
    安卓逆向工具对Java版本要求不高,我们使用Java8
  4. JDK安装 取消更新
  5. JDK配置 JAVA_HOME环境变量 %JAVA_HOME%\bin

008.Java语言特点

  1. 面向对象、强类型、垃圾自动回收
  2. 解释型语言
    解释型语言:Java JavaScript Python Php
    编译型语言:C/C++
  3. 跨平台
public class Demo {
	public static void main(String[] args){
		System.out.println("Hello China!");
	}
}

编译 javac Demo.java
运行 java Demo
Demo.java --> Demo.class --> win/linux/mac版 jvm虚拟机 --> Windows/Linux/Mac
Demo.class 不需要修改代码,既可以在Windows平台运行,也可以在Linux平台运行,靠的就是虚拟机
Java虚拟机机制屏蔽了底层运行平台的差别,实现了"一次编译,到处运行"

009.第一个Java程序

  1. 下载安装sublime text4
    (讲师推荐的用notepad++,但它的作者是个有名的太毒)
  2. Hello.java
public class Hello {
	public static void main(String[] args){
		System.out.println("Hello China!");
	}
}
  1. Java程序的注意事项
  • Java源文件以.java为扩展名
  • Java语言区分大小写
  • public class Hello 表示Hello是公有类
  • 一个文件只能有一个公有类,并且类名要与文件名一致,其他类数量不限
  • {} 代码的开始和结束
  • main主方法,是程序入口,必须有,必须这么写不能改
  • 打印输出字符串
  • 语句结束用;
  • 所有的符号都是英文状态下的
  • 源文件使用UTF-8编码

小肩膀安卓逆向--007-013

小肩膀安卓逆向--007-013

010.Java语言基础组成(语言共性)

  • 注释
  • 变量、数据类型
  • 关键字、保留字
  • 标识符
  • 常量
  • 运算符
  • 语句
  • 数组
  • 函数
  • 类、集合、反射、加密库
  • IO流、socket、泛型
  • 多线程、正则

011.注释

  1. 单行注释
    格式://注释文字
  2. 多行注释
    格式:/注释文字/
  3. 被注释的文字不会被JVM解释执行
    多行注释不能嵌套
  4. 由于编码问题导致编译失败
    由于cmd默认的是gbk编码,而我们写出来的程序是utf-8,所以当程序中出现中文,编译时就会出问题。可以通过设置环境变量,让编译时用utf-8
    设置环境变量 JAVA_TOOL_OPTIONS -Dfile.encoding=UTF-8
    小肩膀安卓逆向--007-013

012.Java常用编码

打开cmd->标题栏右键->属性,可以看到目前cmd的默认编码方式是gbk
小肩膀安卓逆向--007-013

在cmd下用type打印Hello.java,可以看到出现了乱码,原因就是编码不匹配
小肩膀安卓逆向--007-013

  1. 字符和码值的对应关系是通过字符编码表决定的
  2. 常见字符编码
  • ASCII(用1个字节表示,总共128个字符,其中有一些字符是不可见字符)
  • Unicode(字母、数字、汉字都是使用2个字节表示)
  • UTF-8(变长的编码方式,1-6个字节表示,字母数字用1个字节,汉字用3-4个字节。是使用最广的一种Unicode的实现方式)
  • gbk(字母数字用1个字节,汉字用2个字节表示)
  • gb2312(范围比gbk小)

Unicode、UTF-8兼容ASCII码表

推荐文章:
ANSI是什么编码
百度百科:utf-8
推荐书籍
《编码:隐匿在计算机软硬件背后的语言》

013.cmd设置默认编码utf-8

在cmd下输入chcp 65001,回车,活动页的编码变为utf-8,但是这种修改是临时的,如果新开一个cmd,编码依然是gbk

永久修改cmd的编码为utf-8,需要通过修改注册表
win+r运行,输入"regedit",找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
然后"右键-新建",选择"字符串值","名称"列填写"autorun", 数值数据填写"chcp 65001"
再次在运行中输入cmd,就会自动把编码格式设置为UTF-8
之后再打开cmd,默认就是utf-8
小肩膀安卓逆向--007-013

上一篇:编码问题


下一篇:Tomcat 中 jsp 中文乱码显示处理解决方案