一、构造方法

1.1、java中的构造方法跟普通方法有很大的区别:

  • 构造方法的方法名跟类名相同
  • 构造方法没有返回值类型,连void也没有,也不能用return返回值
  • 每次创建一个对象,都会调用构造方法,如果没有写构造方法,系统会默认加上一个空参的构造,如果已经写了构造方法,无论有无参数,系统都不会再加上构造方法
  • 构造方法主要用于给对象初始化值

1.2、构造方法的特点:

  • 构造方法的方法名与类名相同
  • 构造方法没有返回值类型,也不写void
  • 构造方法可以重载

1.3、什么时候会用到构造方法:

在创建对象的时候

1.4、构造方法的作用:

创建对象的时候给属性赋初值

1.5、构造方法的分类:

显示的构造方法和隐式地构造方法

  • 显示的构造方法:显示的写出构造方法时,系统不会提供默认的无参构造方法
  • 隐式地构造方法:系统默认提供的无参构造方法

二、代码块

Java中用"{}"包起来的就叫做代码块,根据位置与声明的不同,可以分为以下几种:

  • 局部代码块,局部位置,用于限定变量的生命周期
  • 构造代码块,位于类中成员位置,用"{}"包起来,每次调用构造函数前,都会先执行一次构造代码块,可以把多个构造函数中的共同代码放一起,给对象进行初始化
  • 静态代码块,在类中的成员位置,用{}括起来的代码,只不过它用static修饰了

作用一般是对类进行初始化

优先级:静态成员变量或静态代码块> main方法> 非静态成员变量或非静态代码块 > 构造方法

java中的构造方法与代码块相关推荐

  1. java中的四种代码块

    原文链接: java中的四种代码块_Munt的博客-CSDN博客_java中代码块 在java中用{}括起来的称为代码块,代码块可分为以下四种: 一.简介 1.普通代码块: 类中方法的方法体 2.构造 ...

  2. java 代码块_详解java中的四种代码块

    在java中用{}括起来的称为代码块,代码块可分为以下四种: 一.简介 1.普通代码块: 类中方法的方法体 2.构造代码块: 构造块会在创建对象时被调用,每次创建时都会被调用,优先于类构造函数执行. ...

  3. 【 史上最坑爹的Java代码系列02 】Java中的三种代码块

    Java中有三种代码块,三种代码块中的代码执行的优先级是面试中会被提问到的问题. 三种代码块:静态代码块.方法代码块.普通代码块 其中,普通代码块是比较少见而且比较少使用的. package com. ...

  4. Java中的static静态代码块

    一.与静态方法的比较 一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要 ...

  5. java中synchronized(同步代码块和同步方法)详解及区别

    问题的由来: 看到这样一个面试题: ? 1 2 3 4 5 6 //下列两个方法有什么区别 public synchronized void method1(){} public void metho ...

  6. java子类代码块_java中父类子类静态代码块、构造代码块执行顺序

    父类静态(代码块,变量赋值二者按顺序执行) 子类静态 父类构造代码块 父类构造方法 子类构造代码块 子类构造方法 普通方法在实列调用的时候执行,肯定位于上面之后了 //父类A public class ...

  7. java构造方法,构造代码块,静态代码块的执行顺序

    构造方法,构造代码块,静态代码块的执行顺序 静态代码块:用static声明,jvm加载类时执行,仅执行一次 类中直接用{}定义,每次创建对象时执行 同级别的变量(static和普通变量)的执行顺序由代 ...

  8. java加载类时静态代码块、构造代码块、构造方法执行顺序

    构造代码块作用:https://blog.csdn.net/hspingcc/article/details/54893853 package com.spring.partise;class A{A ...

  9. java 静态代码块_关于Java你不知道的那些事之代码块

    前言 普通代码块:在方法或语句中出现的{},就被称为代码块 静态代码块:静态代码块有且仅加载一次,也就是在这个类被加载至内存的时候 普通代码块和一般语句执行顺序由他们在代码中出现的次序决定,先出现先执 ...

最新文章

  1. Jmeter 多台机器产生负载及问题解决方法
  2. [LeetCode] Excel Sheet Column Number
  3. mysql第五章项目二_Todo List:Node+Express 搭建服务端毗邻Mysql – 第五章(第1节)
  4. linux7 security,SECURITY-centos7下NFS使用与配置
  5. .NET中常见的 IL 指令集
  6. java如何替换字符串0A_我有一个带有“ \ u00a0”的字符串,我需要将其替换为“” str_replace failed...
  7. 让所有连接都弹出新窗口
  8. ERROR: Attempting to operate on hdfs namenode as root ERROR: but there is no HDFS_NAMENODE_USER defi
  9. 什么是CTS、CLS和CLR
  10. msk基带信号matlab,MSK、GMSK调制及相干解调Matlab仿真
  11. 网线水晶头接法图解8根线芯顺序排序图示
  12. mysql 5.7.20免安装_Windows下MySQL 5.7.20 免安装版配置
  13. 相见恨晚,真的很喜欢Udacity
  14. Redis trouble21 -- aof持久化导致redis命令阻塞
  15. 星期零参展FHC,推出新品“Pastrami”和“微笑乐摇杯”,引爆植物肉潮流
  16. PyCharm选择性忽略PEP8代码风格警告信息
  17. 将多个class文件打包为jar包
  18. 手把手教你,如何用Python做副业月入10000+!
  19. 联想p720装系统_“多达112个框”:Lenovo 联想 推出 ThinkStation P920/P720系列 工作站...
  20. 素人做知识付费,还有没有机会

热门文章

  1. Python代码注释 - Python零基础入门教程
  2. BugkuCTF-WEB题文件包含
  3. linux配置端口ipv6地址,linux配置ipv6地址命令
  4. printf函数输出多个printf 、前置加加或者后置加加
  5. 电气与计算机学院院长论坛报告,我校电子系举办2019年电子信息学科院长论坛暨工程教育新进展研讨会...
  6. java jdbc 操作_Java:JDBC操作
  7. linux多线程访问共享资源,多个线程访问共享对象和数据
  8. flash as3与后台php交互用户注册例子,as3与PHP后台交互2
  9. httpurlconnect设置中文参数_CNC机床参数的设置及报警解除,赶紧收藏吧!
  10. input层级高 小程序_获客、引流成本越来越高?开发小程序:低成本获客、引流...