zoukankan      html  css  js  c++  java
  • JAVA_SE基础——10.变量的作用域

    <pre name="code" class="java">
    

    
    

    上个月实在太忙了,从现在开始又可以静下心来写blog了。

    变量的作用域指 可以使用此变量的简单名称来引用它的 程序区域。

    类级变量又称全局级变量或静态变量,需要使用static关键字修饰,你可以与 C/C++ 中的 static 变量对比学习。类级变量在类定义后就已经存在,占用内存空间,可以通过类名来访问,不需要实例化。

    对象实例级变量就是成员变量,实例化后才会分配内存空间,才能访问。

    方法级变量就是在方法内部定义的变量,就是局部变量。

    块级变量就是定义在一个块内部的变量,变量的生存周期就是这个块,出了这个块就消失了,比如 if、for 语句的块。块是指由大括号包围的代码,例如:

    {
        int age = 17;
        String name = "jhh";
        // 正确,在块内部可以访问 age 和 name 变量
        System.out.println( name + "已经" + age + "岁了");
    }
    // 错误,在块外部无法访问 age 和 name 变量
    System.out.println( name + "已经" + age + "岁了");

    上面代码中,在大括号外的代码,不能访问到上一段大括号里面的变量、 


    变量的作用域在编程中尤为重要的,接下来通过一个案例进一步熟悉变量的作用域,如下代码所示:

    public class Fw {
    	public static void main(String[] args) {
    		int x = 12;      // 定义了变量x
    		{
    			int y = 96; // 定义了变量y
    			System.out.println("x is " + x); // 访问变量x
    			System.out.println("y is " + y); // 访问变量y
    		}
    		y = x;           // 访问变量x,为变量y赋值
    		System.out.println("x is " + x);     // 访问变量x
    	}
    }
    

    上图出现了编码错误,   出错的原因在于在给变量y赋值时超出了它的作用域。 

    同学你可以试着将第9行代码去掉,再次编译程序不再出错,运行结果如下图:


    修改后的代码中,变量x,y都在各自的作用域中,因此都可以被访问的到。



    不懂的留言或者加企鹅把654249738



     



  • 相关阅读:
    Spring Boot 使用 Dom4j XStream 操作 Xml
    Spring Boot 使用 JAX-WS 调用 WebService 服务
    Spring Boot 使用 CXF 调用 WebService 服务
    Spring Boot 开发 WebService 服务
    Spring Boot 中使用 HttpClient 进行 POST GET PUT DELETE
    Spring Boot Ftp Client 客户端示例支持断点续传
    Spring Boot 发送邮件
    Spring Boot 定时任务 Quartz 使用教程
    Spring Boot 缓存应用 Memcached 入门教程
    ThreadLocal,Java中特殊的线程绑定机制
  • 原文地址:https://www.cnblogs.com/Jhaiha0/p/8465339.html
Copyright © 2011-2022 走看看