java基础()
计算机高级语言语言的类型有2中,编译型和解释型,Java是2种语言的结合。
Java程序的运行机制:

1.javac Hello.java(文件名和类名要相同)
生成Hello.class文件之后
2.java Hello (不要写.class java命令会调用虚拟机进行运行)
-------------------------------------------------------------------------
不同的操作系统,安装不同的虚拟机,实现java的跨平台性。



静态方法里面只能调用静态属性和静态方法


'\n' 表示换行 ' '或者" "表示空格 '\t'表示制表符,也就是键盘上的tab键

输出单引号

\转义字符,出现在特殊字符之前,会将特殊字符转换为普通字符。

1、 java语句当中的v整数型字面值被默认当做int类型来处理。要让这个”整数型字面值“被当做Long类型来处理的话,需要在“整数型字面值"后面添加L,建议使用大写的L.
2、java语言当中的整数型字面值有三种表示方式:
第一种方式:十进制【是一种缺省默认的方式】常用 1,2,5,8.。。。。。
第二种方式:八进制【在编写八进制整数型字面值的时候需要以0开始】012,0236,。。。。
第三种方式:十六进制【在编育十六进制整数型字面值的时候需要以0x开始】0x526,0x56214.....................


关于浮点型数据类型::
float单精度【4个字节】
double双精度【8个字节,精度较高】 double的精度太低【相对来说的】,不适合做财务软件。
财务涉及到钱的问题,要求精度较高,所以SUN在基础类库当中为程序员准备了精确度更高的类型,只不过这种类型是一种引用数据类型,不属于基本数据类型,它是:java.math.BigDecimal
其实java程序中sUN提供了一套庞大的类库,java程序员是基于这套基础的类库来进行开发的。所以要知道java的sE类库的字节码在哪儿,要知道java的sE类库的源码在哪儿?
*SE类库字节码:c:\Program riles (x86)\Javaljdk1.7.0_75\jre\lib\rt.jar*
SE类库源码:c:\Program Files (x86) \Javaljdk1,7.0_75\src.zip
int c = 'a'; char转换为int
System.out.println(c); //97

double dd=10/3 ; 结果:3.0
分析: int/int 得到的是一个int类型,然后int转为double 得到3.0
double d=10.0/3; 结果:3.33333333
分析:double/int int先转为double类型 然后运算


运算的结果才可以类型转换,不运算,所以报错。可以改为byte b=(byte)(i/3);
a++和++a的关系:
不管是a++和++a,a最后都会+1.
int a=10;
int b=a++;
打印输出a,b
//a:11 b:10
int a=10;
int b=++a;
打印输出a,b
//a:11 b:11
如果是int c = 10 ; System.out.println(c++); 结果为10
默认调用PrintStream的println(int x)方法。

同理a--和--a的运算顺序和++一样;

逻辑与和短路与


关于java中的赋值类运算符:
赋值类运算符包括两种:
基本的赋值运算符:=
扩展的赋值运算符:+=,-=,*=,/=,%=......
赋值类的运算符优先级:先执行等号右边的表达式,将执行结果赋值给左边的变量。

byte i=10; i = i+5; 编译会报错
byte i=10; i+=5; 编译不会报错。



编译能通过,但是运行期损失精度。
连接运算符:+


三元运算符:




结果为:
0
1
2
连续输出10次
不管内层是什么,因为外层for的原因肯定会输出10次.内层for执行的结果为0(换行),1(换行),2(换行).
99乘法表:







浙公网安备 33010602011771号