zoukankan      html  css  js  c++  java
  • Java 面向对象--代码块

    代码块主要就是通过{}花括号 括起来的代码;

    主要分为 普通代码块 构造块 静态代码块三类。后面学到线程还有一个同步代码块,到时候再说;

    普通代码块

    package com.java1234.chap03.sec07;
     
    public class Demo1 {
     
        public static void main(String[] args) {
            int a=1;
            /**
             * 普通代码块
             */
            {
                a=2;
                System.out.println("普通代码块");
            }
            System.out.println("a="+a);
        }
    }package com.java1234.chap03.sec07;
     
    public class Demo1 {
     
        public static void main(String[] args) {
            int a=1;
            /**
             * 普通代码块
             */
            {
                a=2;
                System.out.println("普通代码块");
            }
            System.out.println("a="+a);
        }
    }

    运行输出:

    普通代码块

    a=2

    构造块 构造块作用就是扩展构造器功能 每次实例化对象都会执行构造块里的内容:

    package com.java1234.chap03.sec07;
     
    public class Demo2 {
     
        /**
         * 构造块
         */
        {
            System.out.println("通用构造块!");
        }
         
        /**
         * 构造方法一
         */
        public Demo2(){
            System.out.println("构造方法一");
        }
         
        /**
         * 构造方法二
         */
        public Demo2(int i){
            System.out.println("构造方法二");
        }
         
        /**
         * 构造方法三
         */
        public Demo2(int i,int j){
            System.out.println("构造方法三");
        }
         
        public static void main(String[] args) {
            new Demo2();
            new Demo2(1);
            new Demo2(1,2);
        }
    }

    运行输出:

    通用构造块!

    构造方法一

    通用构造块!

    构造方法二

    通用构造块!

    构造方法三

     

    我们发现 每次调用构造方法 都会先执行 构造块

     

    静态代码块

    {}花括号前加static修饰词 在类加载的时候执行 而且只执行一次

    package com.java1234.chap03.sec07;
     
    public class Demo3 {
     
        /**
         * 静态代码块 类加载的时候执行
         */
        static{
            System.out.println("静态代码块!");  
        }
         
        /**
         * 构造块
         */
        {
            System.out.println("通用构造块!");
        }
         
        /**
         * 构造方法一
         */
        public Demo3(){
            System.out.println("构造方法一");
        }
         
        /**
         * 构造方法二
         */
        public Demo3(int i){
            System.out.println("构造方法二");
        }
         
        /**
         * 构造方法三
         */
        public Demo3(int i,int j){
            System.out.println("构造方法三");
        }
         
        public static void main(String[] args) {
            new Demo3();
            new Demo3(1);
            new Demo3(1,2);
        }
    }

    输出:

    静态代码块!

    通用构造块!

    构造方法一

    通用构造块!

    构造方法二

    通用构造块!

    构造方法三

  • 相关阅读:
    Labeling Balls
    Following Orders
    Frame Stacking
    Window Pains
    Sort it all out
    Ferry Loading||
    今年暑假不AC
    xcode10 出现 框架 或者 pod 出错
    网络请求 步骤
    swift UIAlertController使用 UIAlertController的宽度 为270
  • 原文地址:https://www.cnblogs.com/xyg-zyx/p/9824303.html
Copyright © 2011-2022 走看看