构造方法是与类同名、无返回值(含void)、由new自动调用的特殊方法,用于对象初始化;可重载,无参默认构造在未定义任何构造时由编译器提供;核心是确保对象初始状态合理。

构造方法是类中一种特殊的方法,它的名字必须和类名完全一样,没有返回值类型(连void都不能写),作用是在创建对象时自动执行,用来给新对象的成员变量赋初值或做初始化操作。
构造方法的基本特点
它不是普通方法,不靠你手动调用,而是由new关键字触发。只要写了new 类名(),JVM就会找对应参数的构造方法执行。
- 方法名必须和类名一模一样,大小写敏感
- 没有返回值声明,连
void都不允许写 - 可以重载:一个类可以有多个构造方法,只要参数列表不同
- 如果没写任何构造方法,编译器会自动加一个无参的默认构造方法;但只要你写了至少一个,这个默认的就没了
构造方法的主要用途
核心就是“让对象一出生就有合理的初始状态”,避免出现null、0、false等意外默认值带来的问题。
- 给成员变量赋初始值,比如设置用户名、年龄、连接地址等
- 执行必要检查,比如不允许年龄为负数,就在构造方法里抛异常
- 完成资源准备,如打开文件、建立数据库连接(不过实际开发中这类操作通常延迟到专门方法里)
- 配合
this(...)实现构造方法之间的调用,减少重复代码
一个简单例子
public class Person {
private String name;
private int age;
// 无参构造方法
public Person() {
this("未知", 0); // 调用下面的构造方法
}
// 有参构造方法
public Person(String name, int age) {
if (age < 0) {
throw new IllegalArgumentException("年龄不能为负");
}
this.name = name;
this.age = age;
}
}
这样写完后,new Person("张三", 25)会直接初始化好姓名和年龄;而new Person()也会有合理默认值,不会留空。
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
立即学习“Java免费学习笔记(深入)”;
基本上就这些。构造方法看着简单,但它是面向对象中“封装”和“安全初始化”的第一道关卡。










