两种语言类型:
Java 是强类型语言:
- Java要求变量的使用严格符合规定,所有的变量必须先定义后使用。
意思是,一旦某一个变量被定义类型,如果不经过强制转换,则它永远就是该数据类型了。
强类型语言包括Java、.net 、Python、C++等语言。
- Java要求变量的使用严格符合规定,所有的变量必须先定义后使用。
弱类型语言:
- 某一个变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过显性强制转换。
- 弱类型语言包括vb 、PHP、javascript等语言。
区别:
判别的根本是是否会隐性的进行语言类型转变。
强类型语言在速度上略逊于弱类型语言,但是强类型定义语言带来的严谨性又能避免不必要的错误。
数据类型:
Java的数据类型分两大类:
基本类型(Primitive type)
- byte,占1字节范围(1B),-128 - 127
- short,占2字节(2B),-32768 - 32767
- int ,占4字节,(4B), -2147483648 - 2147483647
- long,占8字节,(8B)
- float,占4字节(4B),
- double,占8字节,(8B)
- char,占2字节(2B),(2B)
- boolean,点1个位(1b),
PS:
- 位(bit)是计算机内部存储的最小单位。
- 1个字节在计算机的存储形式为二进制 占8位,如11001100,
- 1b代表1个位,1B代表1个字节
- 1B= 8b,1024B = 1KB,1024KB =1MB,1024MB =1 GB
- 引用类型(Reference Type)
示例,新建 Demo02.java
public class Demo2 {
public static void main(String[] args) {
//八大数据类型
//数值
//整数
byte numByte = 10;
short numShort = 20;
int numInt = 30;
long numLong = 40L; //long 数字后面加L表示
//小数,浮点数
float numFloat = 50.1F; //float 数字后面加F表示
double numDouble = 50.2112;
//字符
char nameChar = 'a';
//char nameChar1 = "a"; //不能""赋值,""是String类型
//char nameChar11 = '国'; //一个中文是可以的
//char nameChar12 = '中国'; //两个中文是不可以的
//布尔值 只有2值,true or false
boolean flag = true ;
boolean flag2 = false ;
//八大数据类型,都有对应Java定义好的类,
//如 Byte Integer
String a = "a";
System.out.println(a);
}
}