JavaNote1
1.数据类型
- 基本数据类型
- 逻辑型: boolearn -> true 和 false
- 字符型: char
- 整数型: int short(短整数) byte long
- 浮点数: float(单精度) double(双精度)
引用数据类型
- 类: class
- 接口: interface
- 数组
注意Java中:
- 整型常量默认为int型,声明long型时必须加l或L.
- 浮点型常量默认为double型,声明float型时必须加f或F
2.数据类型转换
- Java可以从任意类型转换为其他基本类型(boolearn类型例外)
容量小的默认转换为容量大的
byte,short,char->int->long->float->double
byte,short,char自动转换为int类型
3.变量:
- 变量:是内存中一个存储空间,用来存放程序在执行过程中需要临时存放的数据.
- 成员变量和局部变量:
- 成员变量(类中)不需要初始化,局部变量(函数中)需要初始化
注意形参
4.运算符
1.算术运算符:加( + ) , 减 ( - ), 乘( * ), 除( / ), 模( % ), 自加( ++ ), 自减( – )
- 除( / ) 的时候, 如果有一个运算数是浮点型, 则结果是浮点数.如果都是int, 则除( / ) 为整除.
- 自加自减 简单来说 num++ 先取值再运算 ++num 先运算再取值
2.关系运算符:== , != , > , < , >= ,<=,位运算符
- 位运算符都是在操作二进制.
- & 与 对应位数都为1, 结果为1, 否则为0
- | 或 对应位数都为0, 结果为0, 否则为1
- ^ 异或 对应位数相同, 结果为0, 否则为1.
- ~ 取反 所有位数去相反值, 1换为0, 0换为1.
- << 按位左移运算符 左操作数按位左移右操作数指定的位数。
- >> 按位右移运算符 左操作数按位左移右操作数指定的位数。
- >>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。
3.逻辑运算符:&&(短路与), ||(短路非), !(逻辑非)
- 赋值运算符:= , += , <<= , &= , ^= ….
4.其他运算符:三目运算符(表达式 ? 值1 : 值2) , 字符串连接运算符( + );
5.其他
1.常量分类:
- 字面值常量:一个写死的/直接写出来的值
- 整数常量:1 2 3
- 小数常量:3.14
- 布尔常量: true 和 false
2.原码,反码和补码
- 正数:正数的原码,反码和补码都是一样的.
- 负数: 负数的补码 = 原码取反 + 1;
3.命名规则
- 类名: 每个单词首字母要大写
- 变量名,方法名: 第一个单词首字母小写,其他单词首字母要大写
- 常量名: 全部大写
- 数字,字母,_,$都可以命名,但是数字不能作为开头
4.if和while的区别
if只判断一次条件,而while可以多次判断条件.(在多线程中使用while比if更加安全)5.switch支持的类型
- 在Java7之前,switch只能支持 byte、short、char、int 或者其 对应的封装类 以及Enum 类型。
在Java7中,呼吁很久的 String 支持也终于被加上了。
注:byte,short,char可以自动提升(自动类型转换)为int,其实最后放的还是int类型!6.面向对象
- 一切皆对象
- 定义一个新的类就是一种新的数据类型 (而这个数据类型就是引用数据类型)
7.方法的重载: 方法的参数个数或参数的类型不一样,但是返回值类型一样 (返回值类型不同不能称之为重载)
最后附上Java学习网址