构造函数及关键字

原创 2016年06月01日 17:22:23

构造函数

特点:

1.函数名与类名相同

2.不需要定义返回值类型

3.不可以写return语句

作用:

给对象进行初始化

运行特点:

对象一建立,就会调用与之对应的构造函数,但是只调用一次。

注意:

1.只要是用class定义的类中,都会有一个默认的空参数构造函数。

2.当在类中自定义了构造函数后,默认的构造函数就消失了。

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

构造函数一建立就会运行,而一般方法,需要被对象调用才会被执行;一般方法可以多次被调用。

什么时候用:

在描述事务时,该事务一出现就具备了一些属性和行为,那么这些内容就要定义在构造函数中。

说明:

构造函数多个时,在类中是重载形式体现的。

构造函数之间调用:

只能通过this语句形式完成,而且该语句只能放在第一行。

class person{

private String name;

private int age;

Person(String name){

this(name,0);

}

Person(String name,int age){

this.name = name;

this.age = age;

}

}

 

this关键字:

this代表本类对象的引用。

this代表哪个对象:哪个对象调用this所在函数,this就指向哪个函数。

this.name:对象中的namename是成员变量

作用:

1.用于区分局部变量和成员变量同名的情况。

2.用于构造函数间调用。

什么时候使用this

当定义功能(函数)时,如果该功能函数的内表又用到了本类对象。这时就用this表示这个对象。

构造函数之间调用使用this语句:

注意:this语句只能放在构造函数的第一行。

因为初始化动作一定要先执行。

 

static关键字:

static:静态修饰符。

用于修饰类中的成员变量,或者成员函数。

特点:

1.被修饰的成员除了能被对象调用外,还可以被类名所调用。

2.被静态修饰的内容被对象所共享。

3.static随着类的加载而加载,随着类的消失而消失。也就是static的生命周期最长。

4.优先于对象存在。

5.被所有对象共享。

使用注意事项:

1.静态方法只能访问静态成员。

2.静态方法中不可以编写thissuper关键字。

3.主函数是静态的。

静态代码块:

static

{

 

}

随着类的加载而执行,优先于主函数(主函数类中)而且只执行一次。

作用:

可以对类进行初始化。

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

C++ explicit关键字 详解(用于构造函数)

在C++程序中很少有人去使用explicit关键字,不可否认,在平时的实践中确实很少能用的上。再说C++的功能强大,往往一个问题可以利用好几种C++特性去解决。但稍微留心一下就会发现现有的MFC库或者...
  • chinaeran
  • chinaeran
  • 2013年12月18日 22:36
  • 7829

1.java常用关键字细节,构造函数

this,super,instanceof ,final,static,静态代码块,构造方法
  • xyc1211
  • xyc1211
  • 2017年07月17日 17:30
  • 151

我的复习之路:Java构造函数之访问控制符

我们知道在Java中有3个访问修饰符,分别为public、protected、private。4个访问控制级别,分别为public、protected、默认和private。 其中类只能有public...
  • happyhj1985
  • happyhj1985
  • 2017年06月19日 23:07
  • 146

C++ 构造函数和析构函数与virtual关键字

一、构造函数 1.构造函数任何时候都不可以声明为虚函数,原因如下:1)虚函数的调用军需通过虚函数表vtable来调用,虚函数表是存储在内存空间的,在调用构造函数前,对象还未被实力化,也就没有该对象的...
  • luoxue720
  • luoxue720
  • 2017年07月13日 22:23
  • 167

JDK8新特性☞方法构造方法的引用

一:创建实体类对象 public class Person { private String firstName; private String lastName; public Pe...
  • braincer
  • braincer
  • 2017年06月21日 13:32
  • 478

C++中什么情况下要用explicit关键字修饰构造函数?

C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。 //explicit 一般用来修饰类的构...
  • hjh2005
  • hjh2005
  • 2012年07月04日 15:34
  • 1036

kingov-php类的继承,访问权限修饰符,重写,构造函数和析构函数在继承中,最终类,最终方法

继承 基本概念 访问权限修饰符 public protected 受保护的 private 私有的 总结 parent 代表父类 构造和析构方法在继承中的表现 重写 继承基本概念 继承,一个类从另一个...
  • kingov
  • kingov
  • 2017年04月04日 15:40
  • 475

深入理解javascript构造函数和原型对象

深入理解javascript构造函数和原型对象对象,是javascript中非常重要的一个梗,是否能透彻的理解它直接关系到你对整个javascript体系的基础理解,说白了,javascript就是一...
  • u012966563
  • u012966563
  • 2016年03月24日 23:02
  • 177

NDK-CPP语言-构造函数+New和Delete和Static关键字+对象大小

public class NDKCpp { //1.C++中构造函数 public native void callCppConstruct(); //2.C++中new关...
  • chuyouyinghe
  • chuyouyinghe
  • 2016年11月07日 15:42
  • 264

JavaScript原型和闭包之---构造函数、原型与对象三者之间的关系(扩充constructor)(五)

通过前面的博客:构造函数、原型、prototype与__proto__我们已经了解: 构造函数有个prototype属性可以访问原型对象, 构造函数可以实例化对象, 实例化的对象有个非标准的proto...
  • diligentkong
  • diligentkong
  • 2017年07月27日 10:40
  • 384
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:构造函数及关键字
举报原因:
原因补充:

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