Java基础

本文详细介绍了Java编程的基础知识,包括标识符、数据类型、变量、常量、运算符、包机制和JavaDoc的使用。讲解了各种数据类型的声明、转换以及变量的声明规则。还提及了Java中的命名规范和代码风格,强调了常量的定义和逻辑运算符的使用。此外,提到了JDK7的新特性,如数字间使用下划线分割。
摘要由CSDN通过智能技术生成

注释

//单行注释
/*
    多行注释
*/

标识符

  • 标识符由 字母, $, _ ,数字,任意字符 组成

  • 首字母由 字母, $, _ ,数字 组成

  • 标识符是 大小写敏感

  • 不能使用 关键字 作为变量名或方法名

数据类型

Java 是强类型语言,必须先声明后使用

type varName 【=value】[{,varName [ =value ]}]

//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型数据

基础类型

//整形
byte num1 = 10;  // 占1字节
short num2 = 20;  //占2字节
int num3 = 30;  // 占4字节
long num4 = 40L;  // 占8字节
//Long类型要在数字后面加个L
​
//小数:浮点数
float num5 = 50.1F;  // 占4字节
//Float类型要在数字后面加个F
double num6 = 3.1415926;  // 占8字节
​
//字符
char name = '泷';  // 占2字节
​
//布尔值: 是非
boolean flag = true;  // 占1位
//boolean flag = false;
//整数拓展  进制
int i2 = 0b10;  // 二进制 0b
int i = 10;  // 十进制
int i3 = 010;  // 八进制 0
int i4 = 0x10;  // 十六进制 0x   0~9 A~F
​
//=============================================
//浮点数拓展?银行业务怎么表示?钱
// BigDecimal  数学工具类
//=============================================
//float  有限  离散  舍入误差  大约  接近但不等于
//double
//最好完全避免使用浮点数进行比较
​
//=============================================
//字符拓展?
//=============================================
//所有的字符本质还是数字
//编码  Unicode  2字节 
​
​

JDK7新特性, 数字之间可以用下划线分割

int money = 10_0000_0000

  • 位(bit):是计算机 内部数据 储存的最小单位

  • 字节(byte):是计算机中 数据处理 的基本单位

  • 字符:是指计算机中使用的字母、数字、字和符号

  • 1B(byte,字节)= 8bit(位)

  • 1KB = 1024B

  • 1M = 1024KB

  • 1G = 1024M

引用类型

  • 接口

  • 数组

类型转换

低 ----------------------------------------------------------------> 高

byte,short,char --> int --> long --> float --> double

//强制类型转换
int i = 128:
byte b = (byte)i;  //
//自动类型转换
byte b = 127;
int i = b;
​
/*
1. 不能对布尔型进行转换
2. 不能把对象类型转换为不相干的类型
3. 在把高容量转换到低容量的时候,强制转换
4. 转换的时候可能存在内存溢出, 或者精度问题!
*/

变量

变量:就算可以变化的量!

每个变量都必须声明其类型

// 类变量
static int salary = 0;
​
// 实例变量:从属于对象
//如果不初始化,会采用默认值
//int:默认是0
//boolean:默认是false
//除了基本类型,其余的默认值都是null;
String str = "hell world";
​
public void method(){
    int i = 0;  // 局部变量
}

常量

常量:初始化后不能再改变值!不会变动的值

所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变

变量名一般使用大写字符

final 常量名 = 值;
final double PI = 3.14;
static final double PI = 3.14;
final static double PI = 3.14;
/*
修饰符,不存在先后顺序
*/

命名规范

  • 所有变量、方法、类名:见名知意

  • 类成员变量:首字母小写和驼峰原则:monthSalary

  • 局部变量:首字母小写和驼峰原则

  • 常量:大写字母和下划线:MAX_VALUE

  • 类名:首字母大写和驼峰原则:Man,GoodMan

  • 方法名:首字母小写和驼峰原则:run(),runRun()

运算符

  • 算术运算符 : +, -, *, /, %, ++, --

  • 赋值运算符 =

  • 关系运算符 : >, <, >=, <=, ==, !=, instanceof

  • 逻辑运算符 : &&, ||, !

  • 位运算符 : &, |, ^, ~, >>, <<, >>> (了解)

  • 条件运算符 ? :

  • 扩展赋值运算符 : +=, -=, *=, /=

/*
//一元运算符
a++  // 先执行代码,再自增1  
++a  // 先自增1,再执行代码
b--
--b
*/
/*
//二元运算符
a = 20   b = 10;
a + b = 30
a - b = 10
a * b = 200
a / b = 2
a % b = 0  // 取余
*/
/*
//逻辑运算符
a = true   b = false
a && b = false  // 逻辑与运算:两个变量都为真,结果才为true
a || b = true  // 逻辑或运算:两个变量都为假,结果才为false
!(a && b)= true  // 取反:真变假,假变真
     短路运算:
     && 只判断前面的
*/
/*
A =     0011 1100
B =     0000 1101
​
A & B = 0000 1100  // 都是1的时候才是1
A | B = 0011 1101  // 有1的时候都是1
A ^ B = 0011 0001  // 相同为0,不相同为1
~B    = 1111 0010  // 取反 0为1,1为0
​
效率极高!!
<<  *2
>>  /2
2<<3 = 16
16>>3 = 2
*/
/*
//三元运算符
// x ? y : z
// 如果x==true,则结果为y,否则结果为z
score = 80
score < 60 ? "不及格" : "及格";  // 及格
*/
/*
// 不建议偷懒
a += b;  // a = a + b
a -= b;  // a = a - b
*/
/*
//字符串连接符  +
a = "Hello"   b = "World"
a + b = "HelloWorld"
*/
  • 优先级

  1. ( ), [ ], { }

  2. !, +, -, ~, ++, --

  3. *, /, %

  4. +, -

  5. <<, >>, >>>

  6. <, <=, >, >=, instanceof

  7. ==, !=

  8. &

  9. ^

  10. |

  11. &&

  12. ||

  13. ? :

  14. =, +=, ==, ...

包机制

  • 包的本质就是文件夹

  • 包语句的语法格式为:

package pkg1[. pkg2[. pkg3...]];
  • 一般利用公司域名倒置作为包名; com.long.text

  •  

  • 为了能够使用某一个包成员,需要使用 import 语句导入包

import package1[.package2...].(classname|*);

JavaDoc

  • javadoc 命令是用来生成自己的API文档

  • 参数

    • @author 作者名

    • @version 版本号

    • @since 指明需要最早使用的jdk版本

    • @param 参数名

    • @return 返回值情况

    • @throws 异常抛出情况

先进入.java文件的目录
cmd: javadoc -encoding UTF-8 -charset UTF-8 Test.java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值