JDK(Java Development kit) Java 开发工具包 javac Compiler(编译器) JRK(Java Runtime Environment)Java运行时环境 JVM(Java Virtual Machine)Java虚拟机(一次编写,多次执行)

**** 记得保存 dir 是查看该目录下所有文件 java 编译:javac -encodin UTF-8 +源代码名称.java (这个过程中会出现编译错误) 运行:java +类名称 (java+hhhh)(可能出现运行时错误) 运行在JVM(虚拟机上)

  1. 面向对象 Oriented Obiect 状态 变量 行为 函数 封装性的思想 区分了内和外
  2. 类 对象的蓝图 模板 样板房

简单的源代码格式 public class 类名称 { // java 的入口函数(方法) public static void main(String[] args){ //写代码的位置 System.out.println("中文 或者 英文“); } } 类名称与文件名要一样(规定) 类名称用英文

数据类型和操作符

java中支持四种变量: 1.属性 | 实例变量(int field) 2.静态属性 | 类变量(static int staticfield) 3.局部变量(函数内部变量) 4.参数(函数引入的参数) 如何定义变量:数据类型+变量名(identifier) 1.直接加分号;定义了变量,并且没有初始化 2.=value; 定义了变量,并且进行了初始化 命名变量名(包括类名、方法名)一些规则 1.必须以 字母 或者 下划线 或者 $ 开头 2.之后的部分可以是字母、下划线、$、以及数字 3.变量名的长度可以无限长的 4.变量名不可以和 java 的关键字重复 5.是大小写敏感的。int java;int Java; 命名的规范: 1.永远不要用$和下划线命名(下划线有个特例) 2.永远使用有意义的名字作为变量名,包括缩写; 3.不要用中文以及拼音命名 4.类名称 每个单词的首字母都大写的形式 (class HelloWorldApp) 方法名称 单个单词,除第一个单词外,首字母大写(int helloWorldApp) 变量名称 常量(不可以修改) 每个字母都大写,用下划线分割(final int COUNT_OF_COURSES=100) 5.类名称和变量名称 (大概是个名字) 方法名称(大概是个动词) 对象:a: 状态(属性) b:行为(方法) 数据类型: 1.基本数据类型(primitive data type) a:数值类型(两类) b:布尔类型(boolean) 真or假
c:字符类型(char) 2.引用数据类型(reference data type) char类型里保存的不是一个ASCII编码,而是一个Unicode编码 ASCII 和 Unicode 两个都是字符编码标准 7位表示 31位表示

字面量(Literal) int a=10; 1.×××的字面量 100;默认为int 100L;(long) 进制 十进制 100 100L 十六进制 0xFF 0xFFL 二进制 0b01010 0b1010L 100(int型的字面量)byte a=100; byteb=233(报错); short(-2^15 - 2^15-1) long 100L(long 型的字面量)int a=100L(报错); 2.浮点型的字面量 1).0 (double) 2).0F 1.0F (float) double a=1.0F;(允许) float b=1.0;(不允许,报错); 李氏转换原则: 需要一个大范围的变量,放一个小范围的变量时自然而允许的; 强制类型转换(type cast) long a=100L; int b=(int)a;

char以及String类型 字符 字符串 char c=‘中’; char c='\u4e2d';(用Unicode转义序列) String s="中国";//用双引号 String 的加法运算 public static void learnStringAdd(){ int a=3; int b=4; System.out.println("结果是"+a+b) System.out.println("结果是"+(a+b)) } public static void main(String[] args){ learnStringAdd(); }
运行结果是: 结果是34 结果是7

运算符

赋值运算符 初始化 修改值 final int a=100;//a的值不能修改 算术运算符(+-*/%) 一元运算符(++ -- + !+10 -10) !逻辑取反只能用于boolean类型 int a=10; !a //C语言合法,java不合法 比较运算符 (== != < > <= ) 条件运算符(&& || ?:)// (?:只允许用于boolean类型) 短路特性 位运算符(~ & | ^)(^异或) 位移运算符(<< >> >>>)

和>>>的区别: 带符号右移 >>>不带符号右移 instanceof 类型判断运算符:对象 instanceof 类型(类)==true | false 凡是逻辑运算,都用boolean运算符