构造器 构造器定义 构造器作用 构造器特点 构造器修饰符 默认构造器 构造器重载 构造器和一般函数的区别 何时定义构造器 构造器私有化 private

构造器定义 用于给对象进行初始化的特殊函数

构造器作用 用于给对象进行初始化

构造器的特点(与普通函数相比) > 构造器必须和类同名 > 每个类可以有一个以上的构造器 > 构造器可以有0个, 1个或1个以上的参数 > 构造器没有返回值 所以, 构造器不可以定义返回值类型, 但可以使用"return;"语句结束构造函数 > 构造器总是伴随着 new 操作符的执行而被调用 对象创建时, 就会调用与之对应的构造器来进行初始化

构造器的修饰符 ConstructorModifier: one of Annotation public protected private

默认构造器 for top level class, member class, or local class 默认构造器, 是指由系统隐式声明的构造器 ***只有类中没有声明构造器时, 系统才会隐式声明一个默认构造器 只要类中声明了构造器, 系统便不再隐式声明默认构造器 > 默认构造器的访问权限始终声明为类访问权限 > 默认构造器是无参的, 除了非 private 的 inner member class 的默认构造器, 该默认构造器隐式声明了一个形参 该形参...representing the immediately enclosing instance of the class 默认构造器是无参构造器, 但无参构造器不一定是默认构造器 > 默认构造器没有 throws 子句 > 默认构造器的方法体只有一条语句, 那就是调用直接父类的无参构造器 只有 Object 例外, 其默认构造器方法体为空 若父类没有可访问的无参且没有 throws 子句的构造器, 那么系统将无法隐式声明默认构造器, 报编译错误

默认构造器 for anonymous class / Anonymous Constructors 匿名构造器

匿名内部类, 不能显式声明构造器. 系统总是为匿名内部类隐式声明一个匿名构造器.

匿名内部类的构造器由其实例创建表达式决定. 匿名内部类构造器的形参个数 = 匿名内部类实例创建表达式的实参个数 匿名内部类构造器的形参个数 = 匿名内部类实例创建表达式的实参个数 + 1

构造器重载 多个构造器是以重载的形式存在的

构造器和一般函数的区别 作用不同 构造器用于初始化对象 一般函数用于声明对象具备的功能 写法上不同. 构造器名字必须和类名字相同 构造器没有返回值. 也就是说, 构造器不可以定义返回值类型 可以使用"return;"语句结束构造函数 一般函数的函数名必须和类名字不同 一般函数有返回值. 而且, 必须定义返回值类型 运行上不同 对象建立时, 就会调用与之对应的构造器; 在对象的生命周期执行且只执行一次 对象创建后, 需要使用对象功能时才调用; 在对象的生命周期中可以被调用多次