黑马程序员——构造函数,构造代码块,静态代码块的区别
来源:互联网 发布:淘宝丫头正品商城正吗 编辑:程序博客网 时间:2024/05/16 15:31
------<a href="http://www.itheima.com"target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
构造函数是给对应对象进行初始化的,是在类一建立就存在的,构造函数可以重载,根据对应的参数找对应的方法
构造代码块是给类的所有对象进行初始化的,优先于别的方法先运行,只要类的对象一建立,它就运行。
静态代码块是给类进行初始化的,只能被静态的方法或者静态的属性调用,因为它是在类一创建就建立,优先于对象存在
所有被静态static所修饰的,都不可以使用this和super ,因为它是优先于对象所存在的,而this和super是表示所调用它的对象
过程:加载.class文件分配内存,静态代码块,默认构造函数的初始化,显示初始化,构造代码块,对应的构造函数初始化
静态什么时候使用:在使用不到本类特有属性的时候,就可以声明成静态的
一、构造函数
格式:
- [修饰符] 类名(参数列表)
- {
- 构造函数中的执行语句;
- }
1、构造函数的特点:
1)构造函数与类名相同;
2)构造函数不返回任何值,也没有返回类型;
3)每一个类有零个或多个构造函数;
4)构造函数在创建对象时自动执行,一般不用显式调用。
现在,就上述几个需要说明的特点进一步进行解释:
特点1:注意java语言区分大小写;
特点2:因此,构造函数前面不可添加任何返回值类型(包括void),也不可以写return语句;
特点3:用户未给类定义构造函数时,编译器会自动添加默认的无参构造函数;一旦用户定义了构造函数,则不会产生默认的构造函数;多个构造函数是以重载的形式存在;
特点4:构造函数也可以显式调用,通过this语句和后面介绍的super语句。
二、构造代码块
格式:
- {
- 构造代码块中的执行语句;
- }
作用:给对象进行初始化
特点:对象一建立就运行,而且优先于构造函数执行。
与构造函数的区别:
构造代码块是给所有对象进行统一的初始化,其定义的是不同对象共性的初始化内容;而构造函数是给对应的对象进行初始化。
三、静态代码块
格式:
- static
- {
- 静态代码块中的执行语句;
- }
作用:给类进行初始化。
特点:随着类的加载而执行,但只执行一次,且优先于主函数。
- 黑马程序员——构造函数,构造代码块,静态代码块的区别
- 黑马程序员-静态代码块、构造代码块、构造函数的区别、
- 黑马程序员—构造代码块、构造函数和静态代码块它们之.....
- 黑马程序员——java中静态代码块、构造代码块、构造函数的执行顺序以及作用
- 黑马程序员——明确 构造函数\构造代码块\静态代码块\ 的功能特点(图解)
- 黑马程序员_java基础学习笔记之(构造函数&构造代码块&静态代码块)的区别
- 黑马程序员_java静态代码块、构造代码块和构造函数的执行时间分析
- 黑马程序员——局部代码块、构造代码块和静态代码块
- 静态代码块 构造代码块 构造函数 区别
- 黑马程序员_静态代码块、构造代码块、构造函数
- 黑马程序员-面向对象(构造函数、构造代码块、静态代码块)
- 黑马程序员_005_构造代码块、构造函数和静态代码块
- 黑马程序员-Java之构造代码块、构造函数、静态代码块
- 黑马程序员-java中构造函数、构造代码块、静态代码块及它们的初始化顺序
- 静态代码块,构造代码块和构造函数的区别
- 面向对象及构造代码块、静态代码块、构造函数的区别
- 静态代码块、构造代码块与构造函数的区别
- Java构造函数、构造代码块和静态代码块的区别和调用时间
- http://ryewhisky.itpub.net/post/28330/298289
- jstat
- vector和string优先于动态数组的分配
- hihocoder1241 : Best Route in a Grid
- Hibernate hql 查询指定字段并获取结果集
- 黑马程序员——构造函数,构造代码块,静态代码块的区别
- 美团和大众点评合并:抱团取暖 1+1能否大于2?---OFweek
- js提交表单
- Mahout 算法解析与案例实战 笔记目录
- Centos 6.5 DNS配置
- 求第n个数的值
- 17.1.1.9 Introducing Additional Slaves to an Existing Replication Environment
- SRM 670 DIV 2 Cdgame 250-point
- java常用工具类(不定时更新)