二、类和对象
1.类是描述同一类型的对象的抽象概念,对象是类的一个具体实例。
2.对象可以看成是静态属性(成员变量)和动态属性(方法)的封装体.
3.当创建类时,就是在描述那个类的对象的外观与行为。执行new来创建对象时,数据存储空间才被分配,其方法才供外界调用。
4.构造方法的名称必须与类名完全相同 。构造方法没有返回值。
5.初始化切记:初始化的顺序是先静态对象,而后是“非静态”对象。
对于静态变量、静态初始化块、变量、初始化块、构造器,
它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器。
6.栈内存:在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。
在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。
堆内存:堆内存用来存放由new创建的对象和数组。
7.使用get和set方法,是为了保证程序的封闭性和安全性。。
如果直接把数据设为public ,那么数据很可能会混乱,无法维护。
8.产生随机数0到100
Random rand = new Random();
int m = rand.nextInt(100);
9.从键盘输入数据示例:
Scanner scanner=new Scanner(System.in); //当程序进行到这里的会要求你从键盘输入什么东西 如果你输入和一个整形的数字 比如 150
int s=scanner.nextInt(); //带有校验功能
10.静态工厂方法:比较流行的规范是把静态工厂方法命名为valueOf或者getInstance。
Calendar cal=Calendar.getInstance(Locale.CHINA);
11.修饰符范围
private:当前类中才可以使用; public :完全公开; protected:子类可以访问。
static(静态):修饰属性或者方法时,表示全类公有,相当于全局变量。
12.java具有自动的垃圾收集机制。
三、单例模式
懒汉式:private static Single single=null;
懒汉式:
public class Single {
private static Single single=null;
private Single() {}
public static Single getInstance() {
if(single==null) single=new Single();
return single;
}
}
恶汉式:private static Single single=new Single();
恶汉式:
public class Single{
private static Single single=new Single();
private Single() { }
public static Single getInstance() {
return single;
}
}