JAVA 学习模块八:构造函数

原创 2016年08月31日 20:43:26

这里写图片描述

一.构造函数特点

1.函数名与类名相同
2.不用定义返回值类型
3.没有具体的返回值

/*
构造函数: 构建创造对象时调用的函数  作用: 可以给对象进行初始化。
创建函数都必须要通过构造函数初始化


一个类中如果没有定义过构造函数,那么该类中会有一个默认的空参数的构造函数。
如果类中定义了指定的构造函数,那么类中默认的构造函数就没有了



*/

class  PerSon
{
    private String name;
    private int age;
    //定义一个person类的构造函数
    PerSon()//构造函数而且是空参数的
        {

    }



    public void speak()
    {
        System.out.println(name + age);
    }
}


class demo

{
    public static void main(String[] args)
    {
    PerSon = new PerSon(); //new 的时候会自动调用 person 构造函数 ,并运行

    }


}
class  PerSon
{
    private String name;
    private int age;
    //定义一个person类的构造函数
    PerSon()//构造函数
        {

            name = “baby”

        }
    person(String n) //一出生就有 名字
    {
    name = n
    }




    public void speak()
    {
        System.out.println(name + age);
    }
}


class demo

{
    public static void main(String[] args)
    {
    PerSon p = new PerSon(); //new 的时候会自动调用 person 构造函数 ,并运行
    person p1 = new person("xiaoming");

    }


}

2.一般函数和构造函数的区别:

1.构造函数:对象创建时,就回调用与之对用的构造函数,对对象进行初始化。
2.一般函数:对象创建后,需要函数功能时才调用。
3.构造函数,对象创建时,会只调用一次
4.一般函数:对象创建后,可以被调用多次。

3. This 关键字

class  PerSon
{
    private String name;
    private int age;
    //定义一个person类的构造函数
//erSon()//构造函数
//{

//  name = “baby”

//}
    person(String name) //一出生就有 名字
    {
        this.name = name //防止初始化时出错
    }
/*
当成员变量和局部变量重名时,可以用 this 关键字区分
this: 代表对象,代表当前对象
this就是所在函数所属对象的引用
简单说那个对象调用了 this 所在的函数,this 就代表哪个对象。
*/



    public void speak()
    {
        System.out.println(name + age);
    }
}


class demo

{
    public static void main(String[] args)
    {
//erSon p = new PerSon(); //new 的时候会自动调用 person 构造函数 ,并运行
    person p1 = new person("xiaoming");

    }


}

构造函数调用构造函数:(但是 this 只能定义在构造函数的第一行)

class  PerSon
{
    private String name;
    private int age;
    //定义一个person类的构造函数
    perSon()//构造函数
    {

        name = “baby”

    }
    person(String name) //一出生就有 名字
    {
        this(name);
        this.name = name; //防止初始化时出错
    }
/*
    判断是否是同龄人
    */
    public boolean compare(person p)
    {
        if (this.age == p.age)
            return ture;
        else
            return false;

    }
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

java学习日志(八)-- 匿名对象、封装、构造函数

匿名对象、封装、构造函数

构造函数继承.关于java

Java学习笔记之构造函数&this

class Person { private String name; private int age; //定义一个Person类的构造函数 Person()  //构造函数, 而...

c#和java中的构造函数

  • 2011-12-03 08:03
  • 286KB
  • 下载

java学习笔记3封装和构造函数

封装在使用中其实就是一个实体类:bean、po 封装:是一种将操作和操作所涉及的数据捆绑在一起使其免受外界干扰和误用的机制,也就是隐藏对象的属性和实现细节,仅对外提供公共访问方式(public),提...

黑马程序员——【Java反射学习】方法的反射/成员变量的反射/构造函数的反射

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- Class类的使用方法的反射成员变量的反射构造函数的反射Java类加载机制 1....

java学习总结五:继承中子父类的构造函数

子类中的所有的构造函数的第一句都隐式地含有父类中的空参构造函数 super() 当父类中有带参数的构造函数时,编译往往不会通过,这是因为父类中的默认空参构造函数不存在了,子类依旧隐式地含有super...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)