4.1 代码块的分类、作用

代码块概述 代码块是类的5大成分之一(成员变量、构造器,方法,代码块,内部类),定义在类中方法外。 在Java类下,使用 { } 括起来的代码被称为代码块 。

4.2 代码块分为

静态代码块: 格式:static{} 特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次 优先加载 使用场景:在类加载的时候做一些静态数据初始化的操作,以便后续使用。

package code;
​
public class StaticDemo1 {//静态代码块,属于类,优先加载一次,自动触发执行//作用,可以初始化静态资源public static String name;static {System.out.println("=====静态代码块被触发执行=====");name = "张三";}
​public static void main(String[] args) {System.out.println("====main方法被执行=====");}
}

构造代码块(了解,见的少): 格式:{} 特点:每次创建对象,调用构造器执行时,都会执行该代码块中的代码,并且在构造器执行前执行 使用场景:初始化实例资源。

package code;
​
public class StaticDemo2 {public String name;public StaticDemo2(){System.out.println("无参构造器被触发执行");}//实例代码块,无static修饰,属于对象,每次构造对象时都会被触发执行{name = "张三";System.out.println("====实例代码块被执行======");}public static void main(String[] args) {StaticDemo2 s1 = new StaticDemo2();System.out.println(s1.name);StaticDemo2 s2= new StaticDemo2();System.out.println(s2.name);
​
​}
}

4.3 静态代码块的应用案例

斗地主

需求:在启动游戏房间的时候,应该提前准备好54张牌,后续才可以直接使用这些牌数据。

package code;
​
import java.util.ArrayList;
​
public class StaticDemo3 {//private本类访问 public 全部访问 公开public static  ArrayList<String> cards = new ArrayList<>();static {//正式做牌//定义一个数组存储全部参数String[] sizes = {"3","4","5","6","7","8","9","J","Q","K","A","2"};//花色String[] colors = {"♥","♠","♦","♣"};//遍历点数for (int i = 0; i <sizes.length ; i++) {//遍历花色for (int j = 0; j < colors.length; j++) {String card = sizes[i] + colors[j];cards.add(card);}}//加入大小王cards.add("小												

static应用知识:代码块相关推荐

  1. 笔记整理3----Java语言高级(三)11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包修饰符

    11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包&修饰符 第11天 综合练习 今日内容介绍 综合练习 ...

  2. static关键字与代码块

    文章目录 static关键字与代码块 一.static关键字 1.静态属性 2.静态方法 二.代码块 1.普通代码块 2.构造代码块 3.静态代码块 static关键字与代码块 一.static关键字 ...

  3. java 静态代码块 作用域_java static关键字和代码块

    static关键字 为什么需要学习static关键字? 针对某一个变量属于类而不属于某一个具体的对象的时候,我们可以考虑使用static关键字 static概述: 多个对象共享同一份数据 static ...

  4. 面向对象基础——static关键字和代码块的使用

    具体内容  在Java中可以使用static声明属性和方法,因为之前多部分属性和方法都属于非static的,这样一来,每个对象都占有自己的内容,如果现在希望一个属性被所有的对象所共同拥有,则可以将其声 ...

  5. 静态方法static,静态代码块

    为什么工具类中的方法不用实例方法做? 1.实例方法需要创建对象调用 2.此时用对象只是为了调用方法,这样只会浪费内存. 工具类定义时的其他要求: 由于工具里面都是静态方法,直接用类名即可访问,因此,工 ...

  6. Static、构造代码块快、构造函数等的执行顺序

    前言 今天分享的是关于在程序中代码的执行顺序,零零散散写了很多随记,总结起来蛮费时间的,希望大家给个关注,多多关注新人哈,废话不多说,还是老规矩,代码穿插注释的总结方式. 1.代码执行顺序 /*** ...

  7. 给童鞋萌康康关于代码块(static代码块)的小知识

    1.普通代码块: 类中方法的方法体 在方法或语句中出现的{}就称为普通代码块.普通代码块和一般语句的执行顺序由他们在代码中出现的次序决定,先出现先执行. 2.构造代码块: 直接在类中定义且没有加sta ...

  8. php的完整代码块,简单测试了一下php中的代码块、内部类等知识

    简单测试了一下php中的代码块.内部类等知识<?php class a { public $b; public function print_result() { //普通代码块,但已经不是ja ...

  9. 牛客网Java刷题知识点之关键字static、static成员变量、static成员方法、static代码块和static内部类...

    不多说,直接上干货! 牛客网Java刷题知识点之关键字static static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个"伪全局"的概 ...

  10. Java的static,final,代码块,内部类,抽象类,接口等

    Java的static,final,代码块,内部类,抽象类,接口等 1 static关键字月final关键字 1.1 static static表示静态.可以修饰属性,方法,代码块内部类等,总结如下: ...

最新文章

  1. 江苏省三级偏硬考核重点
  2. git或者ssh出错 fatal:open /dev/null or dup failed: No such file or directory、弹出mitty.dump文件
  3. 浅析Android中的消息机制
  4. centos修改oracle字符集
  5. (转)hibernate 注解的问题(异常)集合
  6. Python与用户的交互 ,格式化输出的三种方式
  7. RedHat6.5 搭建glusterfs全过程
  8. ML之nyoka:基于nyoka库利用LGBMClassifier模型实现对iris数据集训练、保存为pmml模型并重新载入pmml模型进而实现推理
  9. 51单片机 简易光电循迹小车
  10. 基于jQuery的对象切换插件:soChange 1.5 (点击下载)
  11. JavaSE——Java基础语法(二进制、变量、方法(函数)、运算符、转义字符)
  12. Springboot集成axis1.4
  13. 你知道荷兰旗问题吗?
  14. IOS 获取系统通讯录中的联系人信息
  15. easy datagrid 按钮控制
  16. Centos 7 磁盘分区
  17. MySQl 5.7版本的Data文件夹,my.ini文件,Uploads文件夹所在目录
  18. 基于卫星高度计海面高度异常资料获取潮汐调和常数方法及应用matlab代码
  19. STM32F103硬件SPI驱动ADS1256
  20. 【python】随机数的生成

热门文章

  1. 推荐微信小程序常用的几个UI组件库
  2. web scraper 爬取微博粉丝性别以及微博内容
  3. python 模拟键盘按键错乱,ubuntu中vi编辑器键盘错乱的问题
  4. 视频和PPT已公开 | 第八届中国互联网测试大会·2021 MTSC 上海站
  5. c语言两个for语句并列执行_c语言中for循环 和嵌套for循环
  6. java解析Excel
  7. Flowable—基本概念和重要名词解释
  8. 子类重写父类构造器以及其他方法
  9. 双活数据中心架构优缺点分析
  10. git 拉取所有远程分支