面向对象之构造器、代码块和内部类

一、构造器(构造方法)   1、构造器的声明格式

语法格式

      

面向对象之构造器、代码块和内部类

举 例:

 

      

面向对象之构造器、代码块和内部类

 

注:构造器都会默认的声明super关键字,调用父类的构造器,不显示的声明,则程序会自动的调用Object类的无参构造器

  2、构造器的特征

它具有与类相同的名称

它不声明返回值类型(与声明为void不同)

不能被static、final、synchronized、abstract、native修饰,不能有return语句返回值

  3、构造器的作用:是类都有构造器,构造器是区分接口和类的关键

创建类的对象

      

面向对象之构造器、代码块和内部类

初始化对象的属性

      

面向对象之构造器、代码块和内部类

  4、说明

1.如果没有显式的定义类的构造器的话,则系统默认提供一个空参的构造器,默认构造器的修饰符与所属类的修饰符一致

      

面向对象之构造器、代码块和内部类

2.定义构造器的格式:权限修饰符  类名(形参列表){}

3.一个类中定义的多个构造器,彼此构成重载

      

面向对象之构造器、代码块和内部类

4.一旦我们显式的定义了类的构造器之后,系统就不再提供默认的空参构造器,若需要默认的空参构造器,必须重写

5.一个类中,至少会有一个构造器

6.父类的构造器不可被子类继承

注意:抽象类中也有构造器,但是,抽象类中的构造器不能实例化,是为了让子类继承时调用

  二、代码块(初始化块)   1、代码块的格式

代码块如果有修饰的话,只能使用static

{} 非静态代码块

static{} 静态代码块

    

面向对象之构造器、代码块和内部类

 

  2、代码块的作用

 

对Java类或对象进行初始化

 

  3、代码块的分类

 

静态代码块

① 内部可以有输出语句

② 随着类的加载而执行,而且只执行一次。区别静态方法:随着类的加载而加载

③ 作用:初始化类中静态的信息

④ 如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行

⑤态代码块的执行要优先于非静态代码块的执行

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpfzfj.html