面向对象(构造代码块)

面向对象(构造代码块)

/**
* Created by 刘朋程 on 2014-5-22.博客园
*/
class GouZaoHanShu {
    private int age;                //私有变量age
    private String name;            //私有变量name
    /*
    * 构造代码块
    * 1、作用;给对象进行初始化
    * 2、和构造函数的区别
    * 构造函数是给对应的对象进行初始化。
    * 构造代码块是给所有的对象进行初始化。
    * 3、构造代码块定义的是不同对象共性的初始化内容。
    * */
    {
        System.out.println("构造代码块运行");
    }
    GouZaoHanShu ()                   //默认构造函数值为空
    {
        System.out.println("A:"+"name="+name+"  "+"age="+age);
        cry();                         //调用cry方法
    }
    GouZaoHanShu (String Myname)        //带有一个函数name的构造函数
    {
        name = Myname;
        System.out.println("B:"+"name="+name+"  "+"age="+age);
        cry();                          //调用cry方法
    }
    GouZaoHanShu (String Myname,int Myage)  //带有两个函数name和age的构造函数
    {
        name = Myname ;
        age = Myage ;
        System.out.println("C:"+"name="+name+"  "+"age="+age);
        cry();                              //调用cry方法
    }
    public void cry()                       //创建方法cry
    {
        System.out.println("cry.....");
    }
}

/**
* Created by 刘朋程 on 2014-5-22.博客园
*/


public class GouZaoHanShuDemo
{   public static void main(String[] args)
{
    GouZaoHanShu a = new GouZaoHanShu();          //新建一个对象a
    GouZaoHanShu b = new GouZaoHanShu("张三");    //新建一个对象b
    GouZaoHanShu c = new GouZaoHanShu("李四",25); //新建一个对象c
    c.cry();                                       //调用cry方法
}
}

你可能感兴趣的:(面向对象)