1. 包装类
public class AutoBoxingUnboxing
{
public static void main ( String[] args)
{
// 直接把一个基本类型变量赋给Integr对象
Integer inObj = 5;
// 直接把一个boolean类型变量赋给一个Object类型的变量
Object boolObj = true;
// 直接把一个Integer 对象赋给int类型的变量
int it = inObj;
if ( boolObj instanceof Boolean )
{
// 先把Object 对象强制类型转换为Boolean类型,再赋给boolean变量
boolean b = (Boolean) boolObj;
System.out.println(b);
}
}
}
public class Primitive2String
{
public static void main (String[] args)
{
var intStr ="123";
// 把一个特定字符串转换成int变量
var it1 = Interger.parseInt(intStr);
var it2 = Interger.valueOf(intStr);
System.out.println(it2);
var floatStr = " 4.56";
// 把一个特定字符串转换成float变量
var ft1 = Float.parseFloat(floatStr);
var ft2 = Float.valueOf(floatStr);
System.out.println(ft2);
// 把一个float变量转换成String变量
var ftStr = String.valurOf(2.345f);
System.out.println(ftStr);
// 把一个double变量转换成String变量
var dbStr = String.valueOf(3.344);
System.out.println(dbStr);
// 把一个boolean 变量转换成String变量
var boolStr = String.valueOf(true);
System.out.println(boolStr.toUpperCase());
}
}
常量池(constant pool) :
专门用于管理在编译时被确定并被保存在已编译的.class文件中的一些数据。
它包括了关于类、方法、接口中的常量,还包括字符串常量。
2. 类成员
static 关键字修饰的成员就是类成员,不能修饰构造器,修饰的类成员属于整个类,不属于单个实例。
当类初始化完成后,类变量也被初始化玩成。
类变量既可以通过类来访问,也可通过类的对象来访问。
3. 单例类
大部分时候都把类的构造器定义成public访问权限,允许任何类自由创建该类的对象。
如果一个类始终只能创建一个实例,则这个类被称为单例类。
在一些特殊的场景下,要求不允许自由创建该类的对象,而只允许为该类创建 一个对象。为了避免其他类自由创建该类的实例,应该把该类的构造器使用private 修饰,从而把该类的所有构造器隐藏起来。