------- android培训java培训、期待与您交流! ----------

构造函数特点:

1.  函数名与类名相同

2.  不用定义返回值类型

3.  不可以写return语句

构造函数的作用:可以用于给对象进行初始化。

注意:

1.  默认构造函数的特点。

2.  多个构造函数是以重载的形式存在的。

构造函数的小细节:

对象一建立就会调用与之对应的构造函数。

当一个类中没有定义构造函数时,那么系统会默认给该类加入一个空参数的构造函数。

当在类中自定义了构造函数后,默认的构造函数就没有了。

一个类中默认会有一个空参数的构造函数,这个默认的构造函数的权限和所属类一致。

如果类被public修饰,那么默认的构造函数也带public修饰符。

如果类没有被public修饰,那么默认的构造函数,也没有public修饰。

默认构造构造函数的权限是随着的类的变化而变化的。

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

构造函数和一般函数在写法上有不同。在运行上也有不同。

构造函数是在对象一建立就运行。给对象初始化。

而一般方法是对象调用才执行,给是对象添加对象具备的功能。

一个对象建立,构造函数只运行一次。而一般方法可以被该对象调用多次。

什么时候定义构造函数呢? 

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

/**
* 构造函数的演示
*
*/ class Person
{
private String name;
private int age; Person()
{
System.out.println("A: name="+name+",age="+age);
} Person(String name)
{
this.name=name;
System.out.println("B: name="+name+",age="+age);
cry();
} Person(String name,int age)
{
this.name=name;
this.age=age;
System.out.println("C: name="+name+",age="+age);
cry();
} public void cry()
{
System.out.println("cry......");
}
} class PersonDemo
{
public static void main(String[] args)
{
Person p1 = new Person();
Person p2 = new Person("lisi");
Person p3 = new Person("lisi",10);
}
}

构造代码块:

格式:

{

...............

}

构造代码块作用:

第一,可以对成员变量进行初始化

第二,通常情况下默认的无参数的构造代码块是创建对象必须使用的。

第三,可以对创建对象提供多种方式,即构造函数重载

构造代码块特点:对象一建立就运行,而且优先于构造函数执行。

构造代码块和构造函数的区别: 

构造代码块是给所有对象进行统一初始化, 而构造函数是给对应的对象初始化。

构造代码快中定义的是不同对象共性的初始化内容。

------- android培训java培训、期待与您交流! ----------

黑马程序员——JAVA基础之构造函数,构造代码块的更多相关文章

  1. 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)

    正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G  QQ 1481135711 这是我总 ...

  2. 黑马程序员----java基础笔记中(毕向东)

    <p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...

  3. 黑马程序员----java基础笔记上(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...

  4. 黑马程序员——JAVA基础之异常处理机制

    ------- android培训.java培训.期待与您交流! ---------- 异常:就是程序在运行时出现不正常情况. 异常由来:问题也是现实生活中一个具体的事物,也可以通过java的类的形式 ...

  5. 黑马程序员 Java基础<九>---> 多线程

    ASP.Net+Android+IOS开发..Net培训.期待与您交流! 多线程 一.概述: 1.线程是什么 说到线程,我们就得先说说进程.所谓进程,就是一个正在执行(进行)中的程序,每一个进程执行都 ...

  6. 黑马程序员——JAVA基础之泛型和通配符

    ------- android培训.java培训.期待与您交流! ---------- 泛型:            JDK1.5版本以后出现新特性.用于解决安全问题,是一个类型安全机制. 泛型好处: ...

  7. 黑马程序员——JAVA基础之多线程的安全问题

    ------- android培训.java培训.期待与您交流! ---------- 导致多线程出现问题的一个特殊的状态:就绪.具备了执行资格,但是还没有获取资源. 导致安全问题的出现的原因: 1. ...

  8. 黑马程序员——JAVA基础之主函数main和静态static,静态代码块

    ------- android培训.java培训.期待与您交流! ---------- 主函数:是一个特殊的函数.作为程序的入口,可以被jvm调用. 主函数的定义: public:代表着该函数访问权限 ...

  9. 黑马程序员——JAVA基础之简述面向对象,类,变量,匿名对象

    ------- android培训.java培训.期待与您交流! ---------- 面向对象: 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将 ...

随机推荐

  1. swing Event-Listener-Adapter 对照表

    Source Event Event Listener AbstractButton (JButton,JToggleButton, JCheckBox,JRadioButton ActionEven ...

  2. JVM-垃圾收集器

    Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商,不同版本的虚拟机所提供的垃圾收集器可能会有很大差距.  HotSpot虚拟机示意图: 说明:两个收集器之间存在连线说明它们可 ...

  3. C++使用POST方法向网页提交数据-----C++发送HTTP数据获取Google天气预报

    例1:C++使用POST方法向网页提交数据    转自:http://www.it165.net/pro/html/201208/3534.html 在C++中可以使用POST方法向网页中提交数据,这 ...

  4. Nginx 安装编译配置

    ./configure --prefix=/usr/local/nginx-1.8.0 --with-http_ssl_module --with-http_spdy_module --with-ht ...

  5. 为什么SQL语句加 1=1

    是为了链接下面的查询条件条件,也或者是替换没有查询条件的语句.比如:要把检索条件作为一个参数传递给SQL,那么,当这个检索语句不存在的话就可以给它赋值为1=1.这样就避免了SQL出错,也就可以把加条件 ...

  6. javaweb-dbcp2

    package cn.itcast.utils; import java.io.InputStream;import java.sql.Connection;import java.sql.Drive ...

  7. 分布式系统之CAP理论杂记[转]

    分布式系统之CAP理论杂记 http://www.cnblogs.com/highriver/archive/2011/09/15/2176833.html 分布式系统的CAP理论: 理论首先把分布式 ...

  8. magento问题集2

    SQLSTATE[42S02]: Base table or view not found: 1146 Table XXXXXX 安装Galathemes.com theme插件. 首页无法打开,提示 ...

  9. magento插件手动下载

    http://freegento.com/ddl-magento-extension.php 这是插件下载网址,但是要去magento官网获得下载秘钥,输入秘钥即可以下载.

  10. 高级iOS开发工程师的面试题

    1:CALayer与UIView的区别是什么? 两者最大的区别就是:涂层不会直接渲染到屏幕上: UIView是iOS界面元素的基础,所有界面元素都是继承于它,他的本身全是由CoreAnimation来 ...