军训第四天和学习Java第二次
2021年7月10日,大学军训的第四天,四天过去,大学的军训似乎并不是很苦,至少到目前为止,我的感觉是现在的军训没有我高中军训的时候苦,期待之后的训练会艰苦一些。
从7月9日到10日,我学习了Java基本数据类型和Java变量类型。变量其实就是数,也是数据,它只是具体数据的另一个名字,二者同有有些不同,下面来看看这二者的具体类容。
【Java基本数据类型】
两大类:内置数据类型与引用数据类型
内置数据类型:及我们常用的不需要自己去定义的数据类型(Java自身所拥有的),八(九)种基本类型(六种数据类型、一(两)种字符类型、一种布尔型)
六种数据类型:byte、short、int、long、float、double(前四种是整型(都是以二进制补码形式表示的),后两种是浮点型)
byte:8位、有符号、二进制补码形式表示
范围:-128(-2^7)~127(2^7-1)
默认值:0
short:16位、有符号、二进制补码形式表示
范围:-32768(-2^15)~32767(2^15-1)
默认值:0
int:32位、有符号、二进制补码形式表示(整型的默认类型)
范围:-2^31 ~ 2^31-1
默认值:0
long:64位、有符号、二进制补码形式表示
范围:-2^63 ~ 2^63-1
默认值:0 L
float:单精度、32位、符合IEEE 754标准
默认值:0.0f
例子:float f = 234.6
double:双精度、64位、符合IEEE 754标准(浮点数的默认类型)
默认值:0.0d
例子:double d = 7D/7./8.0/8.D/12.9867
byte与short类型通常用在大数组中以节约内存空间(byte只占int的四分之一,short只占int的二分之一),但根据所存数的大小选用。在定义long、float、double(有时)需要加上后缀,因为系统默认int类型
boolean:只表示是一位的信息,两个取值——true或者false
默认值:false
常用来判断对错或其他
char:单一的16位Unicode字符
范围:十进制等效值0(\u0000)~ 65535(\ffff)
默认值:‘u0000’
char类型可以存储任何字符(字符串的默认值是null)
【引用类型】:我们自己所写的类,声明时被指定为一个特定的类型,如Employee、Puppy;对象、数组都是引用类型,所有引用类型的默认值都是null。
【Java常量】:常量在运行的时候不能被修改,常用final关键字修饰;为了便于识别通常大写。
【类型转换】:整型、常量、字符型可以进行混合运算。运算时会转换为同一类型进行运算。
1、boolean类型不可转换
2、不能把对象类型转换为不相干类的对象
3、容量大的类型转换为容量小的类型时必须使用强制类型转换
4、转换过程中可能导致溢出或者损失精度
自动类型转换:转换前的数据类型的位数要低于转换后的数据类型,如short——>int,float——>double
强制类型转换:1、转换的数据类型必须是兼容的;如int——>short
2、(type)value
隐含强制类型转换:1、整数默认类型是int
2、小鼠的默认类型时double类型浮点型,定义float类型时必须加上F或者f
【Java变量类型】:
声明:Java语言中,所有的变量使用前都需要声明,格式为:type identifier = value
可以使用逗号隔开同时声明多个同类型变量(与C类似)
变量类型:
局部变量:声明在方法体、语句块之内
实例变量:独立于方法之外且没有static修饰
类变量:独立于方法之外且static修饰
【局部变量】:
1、声明在方法、构造方法或者语句块中;
2、方法、构造方法或者语句块被执行时被创建,当它们执行完成后被销毁
3、访问修饰符不能修饰局部变量
4、局部变量只在声明它的方法、构造方法或者语句块中可见
5、在栈上分配(?)
6、局部变量没有默认值,被声明后必须被初始化之后才可以使用
【实例变量】:(属性)
1、声明在类中,方法体、构造方法或者语句块之外;可以在使用前或者使用后声明
2、被实例化之后,其值也就确定了;在对象创建的时候创建,在对象被销毁的时候销毁
3、可见度:访问修饰符修饰控制,一般应将其设为私有(public 对子类可见 private 对子类不可见,仅在该类可见)
4、具有默认值,与变量类型的基本类型的默认值一样,。变量的值可以在声明中指定也可在构造方法中指定
5、访问:一般直接通过变量名访问;在静态方法和其它类中,应该使用完全限定名:ObjectReference.VariableName
【类变量(静态变量)】:
1、声明在类中,方法体、构造方法或者语句块之外,使用static修饰;
2、静态变量:指声明为public/private/final与static一起类型的变量,经过初始化后不可改变。在第一次访问时创建,程序结束时销毁,存储在静态存储区。
3、默认值:与实例变量一样之外,还可以在静态语句块中初始化。
4、访问:可以通过ClassName.VariableName访问
5、声明为public static final类型时,通常大写类变量名称
浙公网安备 33010602011771号