Java一些基础知识
1.Java的运行机制
编译与解释并存
编译程序:将用高级语言所编写的源程序翻译成与之等价的用机器语言表示的目标程序。其翻译过程称为编译。
解释程序:对源程序一边翻译边执行, 不产生目标程序,
两者区别:是否生成目标程序
2.注释
单行注释:只能注释一行文字 //
多行注释:可以注释一段文字/* 注释 */
JavaDoc:文档注释 /** */
3.表识符
所有的标识都应该一字母(a-z或A-Z)美元符($)或者下划线(_)开始
首字符之后可以是字母(A-Z或者a-z),美元符($)。下划线()或数字的任何字符组
不能使用关键字作为变量名或方法名。
标识符是大小写敏感的
合法标识符举例: age. $salary… value._ 1. value
非法标识符举例: 123abc. -salary. #abc
可以使用中文命名,但是-般不建议这样去使用,也不建议使用拼音,很Low
4.数据类型
java是强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
String a="hello"
//数据类型 变量名 = 值
Sysrem.out.println(a):
JAVA的数据类型分为两大类
基本类型(primitive type)
//八大基本类型
/整数
int num1=10;//最常用
byte num2=20;
short num3=30;
long num4=40L;//Long类型要在数字后面加个大写f
//小数:浮点数
float nun5=50.1F//float类型要在数字后面加大写F
doyble num6 /3.1415926;
//字符
char name ="淑"//只能打一个字符
//字符串
String name ="淑钰"//字符串,String不是关键字,是类
//布尔值:是非
boolean flag=true;
//boolean flag1=false:
引用类型(reference type)
5.数据类型扩展
//整数扩展: 进制 二进制0b 十进制 八进制0 十六进制
int i1=10;
int i2=010;//八进制0
int i3=0x10;//十六进制0x 0~9 A~f
//浮点数扩展 //银行业务怎么表示?钱
//BigDecimoL 数学工具类
//float 有限 离散 舍入误差大约 接近但不等于
//double
//最好完全使用浮点数进行比较
//最好完全使用浮点数进行比较
//最好完全使用浮点数进行比较
//字符扩展
char c1='a';
char c2='帅';
Syestem.out.println(c1);
Syestem.out.println(int)(c1);//强制转换
Syestem.out.println(c2);
Syestem.out.println(int)(c1);//强制转换
//所有的字符本质还是数字
6.类型转换
由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。
int i=5;
byte b=(byte)i;
//强制类型转换(类名)变量名 高——低
double c=i
//自动类型转换 低--高
强制类型转换(类名)变量名 高——低
自动类型转换 低–高
注意点
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
//jadk7新特性 ,数字直接可以用下划线分割
int money=10_0000_0000;
int years=20;
int tota=money*years//-1474836480,计算溢出了
ling total2=moet*years;//默认是int,转换之前已经存在问题了
long tota123=moet*(long)years;
Syestem.out.println(tota13);
7.变量与常量
变量
Java是-种强类型语言,每个变量都必须声明其类型。
type varName[=value] [{,varName[=value]}] ;
//数据类型变量名 =值;可以使用逗号隔开来声明多个同类型变量。
注意事项:
1.每个变量都有类型,类型可以是基本类型,也可以是引用类型。
2.变量名必须是合法的标识符
3.变量声明是- -条完整的语句,因此每-个声明都必须以分号结束
变量作用域分为 类变量 实例变量 局部变量
//属性:变量
public static void main(String[]args){//main 方法
//局部变量:必须声明和初始化值
int i=10 //局部变量
//实例变量:从属于对象;如果不自行制始化,这个类型的默认值0或0.0 u0000
//布尔值:默认是false
//除了基本类型:其余的多少null
String name;
int age;
//变量类型 变量名字=new Demo08
Demo08 dem08=new Demo08();
//类变量 static
static double salary=250;
}
常量
常量可以理解成一-种特殊的变员,它的值被设定后,在程序运行过程中不允许被改变
final//常量名字=值
fina static double PI=3.14;
//修饰符fina static 不存在先后顺序
变量的命名规范
所有变量、方法、类名:见名知意
◆类成员变量:首字母小写和驼峰原则: monthSalary ,除了第一个单词以外,后面的单词首字母大写
局部变量:首字母小写和驼烽原则
◆常量:大写字母和下划线:MAx_VALUE
◆类名:首字母大写和驼峰原则: Man,GoodMan 方法名:首字母小写和驼峰原则: run). runRunO
运算符
算术运算符:+, -, *, /, %,++, - .
赋值运算符=
关系运算符:>,<,>=,<=,=,!=
逻辑运算符:&& ||,!
位运算符:&,|,^,~,>>,<<,>>>了解!)
条件运算符?:
x ? y : z ,如果x为true,则为y,否则为z
●扩展赋值运算符:+=, -=,*=, /=
public static void main(String[] args) {
int x=3;
int y=x++;//y=3 x=4执行定这行代码后。 先y给賦值,再自增
System.out.println(x);
int y1=++x;//y1=5 x=4执疗完这行代码前, 先自增,再给y1賦值
System.out.println(x);
System.out.println(y);
System.out.println(y1); }
}