ylsunyuan技术论坛中心

 找回密码
 注册(请使用中文注册)
搜索
热搜: 活动 交友 discuz
查看: 876|回复: 0
打印 上一主题 下一主题

JAVA代码块相关知识

[复制链接]

124

主题

127

帖子

619

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
619
跳转到指定楼层
楼主
发表于 2015-11-24 18:03:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. /*
  2.         代码块:在Java中,使用{}括起来的代码被称为代码块。
  3.         根据其位置和声明的不同,可以分为
  4.                 局部代码块:局部位置,用于限定变量的生命周期。
  5.                 构造代码块:在类中的成员位置,用{}括起来的代码。每次调用构造方法执行前,都会先执行构造代码块。
  6.                         作用:可以把多个构造方法中的共同代码放到一起,对对象进行初始化。
  7.                 静态代码块:在类中的成员位置,用{}括起来的代码,只不过它用static修饰了。
  8.                         作用:一般是对类进行初始化。
  9.                         
  10.         面试题?
  11.                 静态代码块,构造代码块,构造方法的执行顺序?
  12.                 静态代码块 -- 构造代码块 -- 构造方法
  13.                 静态代码块:只执行一次
  14.                 构造代码块:每次调用构造方法都执行
  15. */
  16. class Code {
  17.         static {
  18.                 int a = 1000;
  19.                 System.out.println(a);
  20.         }

  21.         //构造代码块
  22.         {
  23.                 int x = 100;
  24.                 System.out.println(x);
  25.         }
  26.         
  27.         //构造方法
  28.         public Code(){
  29.                 System.out.println("code");
  30.         }
  31.         
  32.         //构造方法
  33.         public Code(int a){
  34.                 System.out.println("code");
  35.         }
  36.         
  37.         //构造代码块
  38.         {
  39.                 int y = 200;
  40.                 System.out.println(y);
  41.         }
  42.         
  43.         //静态代码块
  44.         static {
  45.                 int b = 2000;
  46.                 System.out.println(b);
  47.         }
  48. }

  49. class CodeDemo {
  50.         public static void main(String[] args) {
  51.                 //局部代码块
  52.                 {
  53.                         int x = 10;
  54.                         System.out.println(x);
  55.                 }
  56.                 //找不到符号
  57.                 //System.out.println(x);
  58.                 {
  59.                         int y = 20;
  60.                         System.out.println(y);
  61.                 }
  62.                 System.out.println("---------------");
  63.                
  64.                 Code c = new Code();        
  65.                 System.out.println("---------------");
  66.                 Code c2 = new Code();
  67.                 System.out.println("---------------");
  68.                 Code c3 = new Code(1);
  69.         }
  70. }
复制代码
  1. /*
  2.         写程序的执行结果。
  3.        
  4.         林青霞都60了,我很伤心
  5.         我是main方法
  6.         Student 静态代码块
  7.         Student 构造代码块
  8.         Student 构造方法
  9.         Student 构造代码块
  10.         Student 构造方法
  11. */
  12. class Student {
  13.         static {
  14.                 System.out.println("Student 静态代码块");
  15.         }
  16.        
  17.         {
  18.                 System.out.println("Student 构造代码块");
  19.         }
  20.        
  21.         public Student() {
  22.                 System.out.println("Student 构造方法");
  23.         }
  24. }

  25. class StudentDemo {
  26.         static {
  27.                 System.out.println("林青霞都60了,我很伤心");
  28.         }
  29.        
  30.         public static void main(String[] args) {
  31.                 System.out.println("我是main方法");
  32.                
  33.                 Student s1 = new Student();
  34.                 Student s2 = new Student();
  35.         }
  36. }
复制代码

回复

使用道具 举报

本版积分规则

QQ|Archiver|手机版|小黑屋|ylsunyuan技术论坛 ( 桂ICP备14005218号-1

GMT+8, 2024-4-19 13:13 , Processed in 0.060959 second(s), 35 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表