昨天睡得太晚,没有把笔记贴上,今天补上了。
1.static静态方法
a.在静态方法中只能直接调用同类中其他的静态成员(包括变量和方法)而不能访问类中的非静态成员。
Because非静态的方法和变量,需要先创建类的实例对象后才可使用,而静态方法在使用前不需要创建对象。
b. 静态方法不能以任何方式引用this(指当前的对象)和super关键字。
c.main方法是静态的,因而在main方法中不能直接访问该类中的非静态成员,必须创建该类的一个实例对
象后,才能访问非静态成员。
2.静态代码块
static{
}
a.一个类中可以使用不包含在任何方法体中的静态代码块(static block),当类被载入时,静态代码块被
执行且只被执行一次,故常用来进行类属性的初始化。
b.类中的静态代码块被自动执行,尽管我们产生了类的多个实例对象,但其中的静态代码块只被执行了一
次。
3.当一个程序中用到了其他的类,类是在第一次被使用的时候才被装载的,而不是在程序启动时就装载程序中
所有可能用到的类。
4.单态设计模式
a.设计模式是在大量的实践总结和理论化之后优选的代码结构、编程风格以及解决问题的思考方式。设计
模式就像是经典的棋谱,不同的棋局用不同的棋谱,免得我们自己再去思考摸索。使用设计模式也许会制约你
去创新,但也不必因循守旧完全不去了解和借鉴前人的成功经验。
b.类的单态模式就是采取一定的方法保证在整个的软件系统中,对某个类只能产生一个实例对象,并且该
类只提供一个取得其对象实例的方法。
c.实现类单态:首先必须将类的构造方法的访问权限设为private,这样就不能用new操作符在类的外部产
生该类的对象实例了。其次在类的内部产生一个静态的对象,再产生该类的静态方法返回内部创建的对象实例
以便外部来访问这个唯一的对象实例。
(外部要访问唯一对象,只有内部来创建,需定义一个方法来返回对象,而且必须是静态的,静态的方法只
能访问静态变量,所以定义的对象变量也必须是静态的。)
5.理解main方法
a.java虚拟机调用main()方法,所以该方法访问权限是public;
java虚拟机在执行main()方法时不必创建对象,所以该方法是static;
该方法接收一个String类型的数组参数,该数组保存执行java命令时传递给所运行类的参数。
Java语言规定,成员方法main必须同时含有public、static和void属性。