java是强类型语言安全性高,速度慢
要求变量的使用要严格规定,所有变量先定义在使用。一旦定义类型不可改变,除非类型转换。
标识符关键字
Java中用户自定义名字:标识符(包、类、方法、参数、变量)
Java中系统自带的具有某种特定功能的名字:关键字
标识符(包、类、方法、参数、变量)命名规则:
- 不可以数字开头
- 必须以字母、(不建议)下划线_、(不建议)美元符号$开头
- 其他部分可以是字母、下划线、美元符号、及数字的任意组合(不可以有其他符号 空格等......)
- 不可以是Java中的关键字
- 严格区分大小写
- go to、const是保留字不是关键字,但标识符不可用
(标识符遵循驼峰命名法 :sun、brightSun、brightSunWest)
Java中的关键字
变量命名规则:
- 使用名词
- 由一个单词组成时全部小写
- 变量有多个单词组成时
3.1第一个单词首字母小写
3.2后续单词的首字母大写
3.3其余字母小写
类名命名规则:
- 使用名词
- 由一个单词组成时首字母大写
- 有多个单词组成时
3.1每个单词首字母大写
3.2其余字母小写
常量命名规则:
- 常量名全部大写
方法名命名规则:
- 使用动词或动宾词组
- 由一个单词组成时全部小写
- 变量有多个单词组成时
3.1第一个单词首字母小写
3.2后续单词的首字母大写
3.3其余字母小写
数据类型分类
1比特 = 1bit = 一位基本存储单元
8比特 = 8bit = 八位基本存储单元 = 一个字节
字符串,String不是关键字,是类
变量
变量概念:
变量:可以变化的量,在内存中开辟了一块空间,变量名前的数据类型限制了内存空间的大小。
Java变量是程序中最基本的存储单元,其要素包含变量名,变量类型及作用域。
变量==某个存储空间 变量所代表的空间都在栈中
数据存储空间是一个按照数据类型一次分配的连续空间,根据不同的数据场景分配不同的数据类型可以节省空间。
注:
每个变量都有自己类型,类型可以是基本类型,也可以是引用类型。
每个变量名必须是合法标识符。
变量声明是一条完整语句,因此每一个变量都必须以分号结束。
局部变量在方法体中生效,必须声明和初始化。
实例变量在类中方法体外定义,从属于对象,如果不自行初始化默认值为0,布尔值是flase,除了基本类型其他都为Null。
public demo03{
String name;
int age;
public static void main(String[] args) {
Demo03 d=new Demo03();
d.age=15;
}
}
类变量static double salary = 2500;类中方法直接调用。
常量static final double PI = 3.14; final static double PI = 3.14;
package demo0222;
public class Test21 {
public static void main(String[] args) {
int num = 0x10;//16进制
int num1 = 010;//8进制
System.out.println(num+" "+num1);
long l=9999999999l;//默认识别整数是int型超出范围在数字后加l或L转换为长整型
}
}
package demo0222;
public class Test22 {
public static void main(String[] args) {
float a,b,c;
a=10.1f;
b=20.4f;//默认识别小数为double类型在身后加f或F转换为单精度浮点型
c=a+b;
System.out.print(c);
}
}
浮点型:
double sum;//双精度浮点型
Float a=3.0f;//浮点型
double num=-6.3e64;//为-6.3*10^64
double num2=-6.3E64;//同上
字符型:char a = ‘a’; 字符要用单引号括起来
布尔型:true真 false假1位
类型转换
自动类型转换:
1、小的类型自动转化为大的类型(大转小不可行)
如:
Int a=120;
double c;
c=a;
2、整数类型可以自动转化为浮点类型,可能会产生舍入误差
3、字符可以自动提升为整数
如:
char c=’a’;
Int num=c;
强制类型转换:
大类型到小类型无法自动类型转换故而需要强制类型转换,或是某些类型不匹配时也可用强制类型转换
如:
float a=31.4f;
int b=(int) a;//格式 :变量 变量名 =(欲转换的数据类型) 变量名称
char c=’a’;
Int d=25;
char e=(char)(c+d);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?