java构造方法

来源:互联网 发布:centos 6.8 docker 编辑:程序博客网 时间:2024/05/22 09:07

构造方法

1.构造方法的格式:


修饰符  函数名(形式参数){
函数体
}


2.构造方法作用:

对象进行初始化.

3.构造方法要注意的事项:

1. 构造方法是没有返回值类型的。
2. 构造方法的函数名是必须与类名一致。
3. 构造方法不是由我们手动调用的,是我们在创建了对应的对象时,jvm会根据你创建的对象传递的参数调用对应的对象。
4. 如果一个类没有显示写上一个构造方法的时候,那么java编译器会为该类添加一个无参的构造方法。
5. 如果一个类已经显示写上一个构造方法的时候,那么java编译器则不会再为该类添加一个无参的构造方法。
6. 构造方法是可以以方法重载的形式存在多个。

4.与一般方法的区别:

1. 一般方法是用于定义对象应该具备的功能。而构造方法定义的是,对象在调用功能之前,在建立时,应该具备的一些内容。也就是对象的初始化内容。

2. 构造方法是在对象建立时由jvm调用, 给对象初始化。一般方法是对象建立后,当对象调用该功能时才会执行。

3. 普通方法可以使用对象多次调用,构造方法就在创建对象时调用。

4. 构造方法的函数名要与类名一样,而普通的方法只要符合标识符的命名规则即可。

5. 构造方法没有返回值类型。

示例:

class person{    int id;    String name;    //无参构造方法    public person(){        System.out.println("无参构造方法被调用了。。。");    }    //有参构造方法    public person(int id,String name){        this.id = id;        this.name = name;        System.out.println("有参构造方法被调用了。。。");        System.out.println(id+","+name);    }}public class Demo  {      public static void main(String args[])      {          //调用无参构造方法        new person();         //调用有参构造方法        new person(7,"java");              }} 

============================================================================================================

构造代码块

构造代码块不具备独立运行能力,编译器会将构造代码块插入到构造方法最前端首先运行。 

1. 构造代码块的作用:

给对象进行统一的初始化。

2. 构造代码块 的格式:

{
代码;
}

3.注意细节:

1.构造代码块在每次创建对象时被调用,用于给对象进行初始化。

2.在每个构造方法中都运行。

3.对象一建立就运行并且优先于构造方法。

4.构造代码块是在创建了代码块所属类的对象时调用一次。

5.当构造方法有共有的属性时一般使用构造代码块。

6.构造方法中有this关键字时,构造代码块不会被插入该构造方法中。

7.如果构造方法中有super关键字,那么构造代码块在Super关键字之后运行。

实例:

class person{    int id;    String name;    {        System.out.println("构造代码块。。。");    }    //无参构造方法    public person(){        System.out.println("无参构造方法被调用了。。。");    }    //有参构造方法    public person(int id,String name){        this.id = id;        this.name = name;        System.out.println("有参构造方法被调用了。。。");        System.out.println(id+","+name);    }}public class Demo  {      public static void main(String args[])      {          //调用无参构造方法        new person();         //调用有参构造方法        new person(7,"java");              }} 


原创粉丝点击