第五章 初始化(think in java 笔记)
类的数据成员在未被初始化时会保证被赋予默认值
boolean false
char []
byte 0
short 0
int 0
long 0
float 0.0
double 0.0
reference null
1.指定初始化。在定义类成员变量的地方为其赋值,可以通过调用某个方法来提供初始值
但这样有个限制就是类的对象都会具有相同的初值。
2.构造器初始化。可以避免指定初始化的缺陷,灵活,不同对象具有各自的初始值,但是
自动初始化无法阻止,他将在构造器调用之前发生。
初始化的顺序与变量定义的先后顺序有关,静态数据只占一份存储区域,static只能用于
域,不能用于局部变量。域也具有默认值。
对象的创建过程(以创建dog为例)
1.JAVA解释器查找类路径,定位dog.class文件。
2.加载dog.class,执行静态初始化,静态初始化只在Class对象首次加载时进行一次
3.当new dog()创建对象是,在堆上为dog对象分配存储空间。
4.将对象的存储空间清零,这样dog对象的所有基本类型数据都设置成为默认值。
5.执行字段定义处的初始化动作。
6.执行构造器。
相关文档:
为减少DOM、SAX的编码量,出现了JDOM;
优点:极大减少了代码量。
使用场合:要实现的功能简单,如解析、创建等,但在底层,JDOM还是使用SAX(最常用)、DOM、Xanan文档。
必须得下载jdom.jar文件
package xml.jdom;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOExce ......
第1章 选择题
1.1 下列语句哪一个正确()
A. Java程序经编译后会产生machine code
B.Java程序经编译后会产生byte code
C.Java程序经编译后会产生DLL
D.以上都不正确
1.2 提供Java存取数据库能力的包是()
A.java.sql
B.java.awt
C.java ......
import java.awt.Desktop;
import java.io.File;
import java.io.IOException;
public class TestDesktop {
public static void main(String[] a) {
try {
Desktop desktop = null;
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
}
desktop.open(new File("/hom ......
/**
* 对图片裁剪,并把裁剪完蛋新图片保存 。
*
* @param srcpath: 被裁减的图片完整路径
* @param tarpath: 已裁减的新图片保存完整的路径
* @param x: 裁减矩形区域左上顶点水平位移
* @param y: 裁减矩形区域左上顶点垂直位移
* @param width: 裁减矩形区域的宽度
* @param height: 裁减矩形 ......