java关键字
1:被java语言赋予特定含义的单词
特点:全部小写
java标识符
组成规则:
1:英文大小写字母
2:数字
3:¥和_
注意事项:
1:不能以数字开头
2:不能使是java的关键字
3: java语言严格区分大小写
命名规则:见名知意
包:其实就是文件夹,用于把相同的类名进行区分
  单级包:fengzelang
  多级包:cn.fengzelang
      cn
        fengzelang
类或者接口:
  一个单词:单词的首字母必须大写
       举例:Student, Dog
  多个单词:每个单词的首字母必须大写
  举例:HelloWorld
方法或者变量:
  一个单词:单词的首字母小写
  举例:main,age
  多个单词:从第二个单词开始,每个 单词的首字母大写
  举例;studentAge,showAllNames()
常量:
  一个单词:全部大写
  举例:PI
  多个单词:每个字母都大写,用_隔开
  举例:STUDENT_MAX_AGE
java注释:用于解释说明程序的文字
注释是一个程序员必须养成的良好写注释的习惯
单行注释:// 注释文字 单行注释可以嵌套使用
多行注释:/* 注释文字 */ 多行注释不能嵌套使用 
文档注释:/** 注释文字 */ 被javadoc工具解析生成一个说明包
注释的作用:
 1:解释说明程序,提高程序的阅读性
 2:可以帮助我们调试程序java常量
一:字面值常量
  1:字符串常量 用双引号括起来的内容
  2:整数常量 所有整数
  3:小数常量 所有小数
  4:字符常量 用单引号括起来的内容
  5:布尔常量 true false
  6:空常量 null
2:自定义常量
 32位操作系统  一个字节表示
数值运算在计算机内是以补码进行运算的
正数的反码与原码一样
负数的反码与原码符号位不变,数值位取反
正数的补码与原码相同
负数的补码在反码的基础上+1
原码 反码 补码
7     符号位  数值位
原码:0       0000111
反码:0       0000111
补码:0       0000111
-7
原码:1       0000111
反码:1       1111000
补码:1            1111001
 
java数据类型
基本数据类型
  数值型
    整数类型: byte(byte的范围是:-128到127) short long
    浮点类型: float double
  字符型:char
       布尔型:boolean
引用数据类型
  类:class
  接口:interface
  数组:[]
使用变量的时候要注意的问题:
 1:作用域
 变量定义在那个大括号内,它就在这个大括号内有效
 并且,在同一个大括号内不能同时定义同名变量
 2:初始化值
 没有初始化的变量不能直接使用,
 你只有在使用前给值就行,不一定非要在定义的时候立马给值,建议定义时给值+是一个运算符,做加法运算的,首先转换为int类型
 一般来说,我们在运算的时候,要求参与运算的数据类型必须一致
 注意:
 Boolean类型不能转换为其他的类型数据类型:java是一种强类型的语言,针对每一种数据都定义了明确的数据类型。
 数据类型分类:
 1:基本数据类型
 2:引用数据类型(类,接口,数组) 基本数据类型:4类8种
 1:整数 占用字节数
 byte      1
 short     2
 int         4
 long      8
 2:浮点数
 float      4
 double     8
 3:字符
 char      2 
 4:布尔
 Boolean   1
 注意:
 整数默认int类型
 浮点数默认double类型
 长整型后缀用L标记或者l,建议使用L
 单精度浮点数用F或者用f标记,建议使 默认转换(从小到大)
 1:byte short char int long float double  long:八个字节
  float:四个字节
  A:它们的底层结构不同
  B:float表示的范围比long的范围大
   long:2^63-1
   float:3.4*10^38 > 2*10^38 > 2*8^38 = 2*2^3^38 = 2*2^114 > 2^63-1
 2: char相互之间不转换,它们参与计算首先转换为int类型
  java语言中的字符可以存储中文字符,java字符占两个字节
  java语言采用的是Unicode编码
 强制类型转换:
 从大的数据类型到小的数据类型
 格式:
 目标数据类型 变量 = (目标数据类型)(被转换的数据)
 注意:
 不要随意的去使用强制类型转换,因为它隐含了精度损失问题。 
 
/* 
 看程序写结果
 字符串数据和其他数据做+,结果是字符串类型。
 这里的+不是加法运算。而是字符串连接符。
*/
class DataTypeDemo9{
   public static void main(String[] args){
     System.out.println("hell0"+ 'a' + 1);//hell0a1
     System.out.println('a'+ 1 + "hello");//98hello
     System.out.println("5 + 5 =" + 5 + 5);//5+5=55
     System.out.println(5 + 5 + " = 5 + 5");//10=5+5
 }
}