一、基本数据类型、包装类与String类之间的转换
1、基本数据类型、包装类--->String类:调用String类的重载的valueOf(Xxx x)方法;
int i1=10;
Integer i2=i1;//转为包装类
Stirng str1=String.valueof(i1);//转为字符串
2、String类--->基本数据类型、包装类:调用包装类的parseXxx(String str)方法;
String s1="";
boolean b1=Boolean.parseBoolean(s1);
二、static关键字
static修饰属性(类变量) ——可是实现累加的效果
1、由类创建的所有对象都共用这一个属性;
2、当其中一个对象对此属性进行修改会导致其他对象对此属性的一个调用;
3、类变量随着类的加载而加载的,而且独一份;
4、静态的变量可以直接通过“类.类变量”的形式来调用;
5、类变量的加载是要早于对象,所以当有对象以后,可以“对象.类变量”使用,但是“类.实例变量”是不行的;
6、类变量存在于静态域中。
static修饰方法(类方法)
1、随着类的加载而加载,在内存中独处一份;
2、可以通过“类.类方法”调用;
3、在静态方法中只能调用静态属性或方法,而不能调用非静态的属性或方法,反之,非静态方法可以调用静态的属性或方法。静态方法内是不可以有super和this关键字的(都调用的是对象,而静态方法是早于对象出现的,故不可以使用)。
三、单例模式
解决的问题:如何只让设计的类只能创建一个对象
如何实现:饿汉式 & 懒汉式
//饿汉式1
class Bank{
//1.私有化构造器
private Bank(){}
//2.创建类的对象,同时设置为private的,通过公共的来调用,体现封装性
//4.要求此对象也为static的
private static Bank instance = new Bank();
//3.此公共的方法,必须为static
public static Bank getInstance(){
return instance;
}
}
//懒汉式
class Bank{
private Bank(){}
private static Bank instance = null;
public static Bank getInstance(){
if(instance == null){
instance = new Bank();
}
return instance;
}
}