Java语言特点
简单性 解释性
面向对象 高性能
分布式处理 多线程
健壮性 多态
结构中立 安全性
特性:跨平台性(通过java自身的jvm实现)
开源性
第一个Java程序
class Helloword{
public static void main (String[] args){
System.out.println("Hello word!") ;
}
}
编译运行就是这个样子
看着这些黑框框莫名帅气
虽然只输出了一句话,但是却经过了好几个过程
编译阶段靠程序员自己操作,编译过程则是在JVM(java虚拟机)中进行。
java中的数据类型
1. 常量
定义:就是在程序的执行过程中其值不发生改变的量。
Java中常量的分类
(1):字面值常量
字面值常量的分类
(1): 字符串常量 用双引号括起来的内容
(2): 整数常量 所有整数
(3): 小数常量 所有小数
(4): 字符常量 用单引号括起来的内容
(5): 布尔常量 只有true和false
(6): 空常量 null(数组部分讲解)
(2):自定义常量
用输出语句输出各种常量。
class VariableDemo{
public static void main(String[] args) {
System.out.println("11");
System.out.println("3.14");
System.out.println('a');
System.out.println("true");
System.out.println("false");
}
}
计算机中对常量的表示
(1):二进制:由0,1组成。 以0b开头
(2):八进制:由0,1,…7组成。 以0开头
(3):十进制:由0,1,…9组成。 整数默认是十进制的
(4):十六进制:由0,1,…9,a,b,c,d,e,f(大小写均可)。 以0x开头(x可大写)
进制就是进位制,是人们规定的一种进位方法。 对于任何一种进制–X进制,就表示某一位置上的数运算时是逢X进一位。
二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。
进制之间的相互转换
除基取余 直到商为0 余数反转
十进制到X进制这个基就是X。
8421快速转化法
2. 变量
定义:在程序执行的过程中,在某个范围内其值可以发生改变的量
定义变量的原因:用来不断的存放同一类型的常量,并可以重复使用。
变量的定义格式 数据类型 变量名 = 变量值 ;
class Bianliangshuchu{
public static void main(String[] args) {
//定义不同类型的变量并且输出
//定义变量的格式:数据类型 变量名=值
//变量名的命名规范:通用规范 变量名一般小写 多个单词 首字母小写 name username userName
byte a=1;
a=20; //重新给变量赋值
byte c=127;
short s=200;
int num=10000;
long num2=1000L; //定义long类型的变量的时候,注意值得后面加上一个后缀L 表示这是一个long类型值
float f=3.14F; //定义float类型时,值得后面加上后缀F 表示这是一个float类型得值,不加语法报错
double d=3.14;
char ch='A'; //char 类型得值,要用单引号 引起来,只能是一个字符
boolean flag=true;
boolean flag2=false;
//通过变量名,输出该变量得值
System.out.println(a);
System.out.println(c);
System.out.println(s);
System.out.println(num);
System.out.println(num2);
System.out.println(f);
System.out.println(d);
System.out.println(ch);
System.out.println(flag);
System.out.println(flag2);
}
}
结果展示
有符号数据表示法的几种方式
原码 , 反码 , 补码
所有数据的运算都是采用补码进行的。
原码
就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
反码
正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
补码
正数的补码与其原码相同;负数的补码是在其反码的末位加1。
演示使用原码,反码,补码分别表示一下我们的 +7 和 -7
+7 | -7 | |
---|---|---|
原码 | 0b 0 0000111 | 0b 1 0000111 |
反码 | 0b 0 0000111 | 0b 1 1111000 |
补码 | 0b 0 0000111 | 0b 1 1111001 |