java入门-构造函数和构造代码块功能

来源:互联网 发布:淘宝买东西怎么分期 编辑:程序博客网 时间:2024/06/06 09:16

构造函数和构造代码块
1、特点:
函数名和类型相同
不用定义返回值类型
不可以写return语句
2、作用:
给对象进行初始化。
当一个类中没有定义构造函数是,呢么系统会默认给该类加入一个空参数的构造函数。
当在类中自定义了构造函数后,默认的构造函数就没有了。

3、构造函数与一般方法在格式上有不同

4、构造函数与一般方法运行的不同
构造函数在对象一建立就运行,给对象 初始化。
而一般方法是对象调用才执行,给对象添加对象具备的功能
一个对象建立,构造函数运行一次;而一般方法可以被对象调用多次。
构造函数可以调用同一个类中的其他一般方法(函数),当构造函数之间星湖调用时需要使用this指针实现。

5、什么时候定义构造函数
当分析事物时,给食物存在具备一些特性或者行为,那么将这些内容定义在构造函数中。

6、构造代码块
作用:给对象进行初始化,对象一建立就运行,而且优先于构造函数执行
和构造函数的区别:构造代码块是给所有的对象进行统一初始化;而构造函数是给对应的对象初始化。
构造代码块中定义的是不同对象共性的初始化内容。
重点:把构造函数中的共性定义在构造代码块中

class Person{    private String name;    private int age;    //构造代码块    {        cry();    }    Person()    {        System.out.println("A:name="+name+",age="+age);//对象一建立就会调用预支对应的构造函数        //cry();    }    Person(String n)    {        name = n;        System.out.println("A:name="+name+",age="+age);        //cry();    }    Person(String n,int a)    {        name = n;        age = a;        System.out.println("C:name="+name+",age="+age);        //cry();    }    public void cry();    {        System.out.println("cry.......");    }    public void setName(String name)    {        name = n;    }    public String getName()    {        return name    }}class  PersonDemo2{    public static void main(String[] args)     {        Person p1 = new Person();        Person p2 = new Person("Lisi");        Person p3 = new Person("wangwu",10)    }}
原创粉丝点击