精华内容
下载资源
问答
  • 1. Java变量 局部变量 定义在方法体内的变量,其生命周期只在方法内。 在方法、构造方法或者语句块中定义的变量成为局部变量;变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。 类变量 静态变量,...

    1. Java变量

    • 局部变量
      定义在方法体内的变量,其生命周期只在方法内。
      在方法、构造方法或者语句块中定义的变量成为局部变量;变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。

    • 类变量
      静态变量,只属于类
      类变量也声明在类中,方法体之外,但必须声明为static类型。

    • 成员变量
      非静态变量,属于类的某个实例对象
      成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候被实例化。成员变量可以被类中的方法、构造方法和特定的语句块访问。

    2.标识符
      在JAVA的组成部分中包括了对包、类、方法、变量等的起名,这些名字是要有一定的规则的。
      

    • 标识符可以包含数字、字母、$、_,但是不能以数字开头
    • 关键字不能用作标识符
    • 标识符是大小写敏感的
    展开全文
  • 成员变量和局部变量概念理解和区别碍于自己的Java基础战五渣,只能从头开始复习一些基础概念,顺便做一下笔记,shame…成员变量和局部变量概念成员变量概念: 成员变量就是属于类的变量,在类中,方法体外...

    成员变量和局部变量的概念理解和区别


    碍于自己的Java基础战五渣,只能从头开始复习一些基础概念,顺便做一下笔记,shame…


    成员变量和局部变量的概念

    成员变量的概念:
    成员变量就是属于类的变量,在类中,方法体外定义的变量

    成员变量又分为两种:

    • 类变量(又称静态变量)
    • 实例变量(又称非静态变量)

    类变量(静态变量)是被static所修饰的成员变量,是属于类的部分,属于类的范畴。
    实例变量(非静态变量)是没有被static修饰的成员变量,是属于类的部分,但是属于对象的范畴。

    局部变量的概念:
    局部变量就是定义在方法体,代码块内的变量,是局部的变量,属于方法的范畴。比如方法的形参,方法内定义的变量等等。


    成员变量和局部变量的区别

    • 成员变量是独立于方法体外的变量,局部变量是类的方法的变量
    • 成员变量包括静态变量和实例变量,局部变量包括形参,方法内变量,代码块(静态,构造,局部)变量,存在方法的参数列表
    • 成员变量可以在类中通过this来引用,而局部变量不行
    • 成员变量可以被public ,private ,protected,static所修饰,局部变量不行,两者都能被final所修饰
    • 成员变量存储在内存的堆区中,局部变量存储在内存的栈区中
    • 成员变量不需要显式初始化,会有默认值。局部变量必须经过初始化赋值。(堆和栈内存区的特性)
    • 成员变量中,类变量跟随程序生命周期,在类的加载时被加载,只加载一次,实例变量跟随对象的生命周期,每实例一次加载一次。而局部变量的生命周期非常短暂,在方法执行开始加载,方法运行结束后销毁。
    • 成员变量的作用域对整个类都是可见的,在一定的条件下,可以被外部访问,局部变量的作用域仅限于定义它的方法,方法的外部是无法访问的。
    • 成员变量和局部变量的作用域不同,所以在类中允许同名存在,如果存在同名,局部变量优先级更高,要访问局部变量,直接名字访问,如果要访问成员变量,需要this.引用访问。

    在此谢谢参考过的网站和博客的作者!!
    展开全文
  • 新手小白学 JAVA 方法 局部变量 成员变量

    万次阅读 多人点赞 2021-04-01 23:59:30
    Java语言中,所有的变量在使用前必须声明。 一般通过“变量类型 变量名 = 变量值 ;”这三部分来描述一个变量。如:int a = 3 ; 变量的使用原则:就近原则,即尽量控制变量的使用范围到最小 2.2 局部变量 位置:定义在...

    1 变量

    1.1 概念

    可以改变的数,称为变量。在Java语言中,所有的变量在使用前必须声明。
    一般通过“变量类型 变量名 = 变量值 ;”这三部分来描述一个变量。如:int a = 3 ;
    变量的使用原则:就近原则,即尽量控制变量的使用范围到最小

    1.2 局部变量

    位置:定义在方法里或者局部代码块中
    注意:必须手动初始化来分配内存.如:int i = 5;或者int i; i = 5;
    作用域:也就是方法里或者局部代码块中,方法运行完内存就释放了

    1.3 成员变量

    位置:定义在类里方法外
    注意:不用初始化,也会自动被初始化成默认值
    作用域:整个类中,类消失了,变量才会释放
    8大类型速查表(含默认值)

    1.4 练习:变量的默认值测试

    创建包: cn.tedu.basic
    创建类: TestVariable1.java

    package cn.tedu.design;
    /*本类用于测试各种类型变量的默认值*/
    public class TestVariable1 {
            static String name;
            static byte b;//整数类型默认值都是0
            static short c;
            static int d;
            static long e;
            static float f;//小数类型的默认值是0.0
            static double g;
            static char j;//char类型的默认值是\u0000
            static boolean h;//boolean类型的默认值是false
    
            public static void main(String[] args) {
                System.out.println(name);//null,引用类型的默认值
                System.out.println(b);
                System.out.println(c);
                System.out.println(d);
                System.out.println(e);
                System.out.println(f);
                System.out.println(g);
                System.out.println(h);
                System.out.println(j);
                System.out.println(h);
            }
        }
    

    1.5 练习:局部变量与成员变量测试

    创建包: cn.tedu.basic
    创建类: TestVariable2.java

    package cn.tedu.oop;
    /**本类用于测试变量的使用*/
    public class TestVariable2 {
        //2.定义成员变量:
        //1)位置:类里方法外
        //2)无需手动初始化,会自动赋予对应类型的默认值
        //3)作用域:在整个类中生效,类消失,变量才会消失
        static int count;
       
        //3.变量有一个使用的原则:就近原则
        static int sum = 200;
        public static void main(String[] args) {
            //1.定义局部变量:
            //1)位置:在方法里/局部代码块里
            //2)必须手动初始化
            //3)作用域:在方法/局部代码块中,对应的代码执行完局部变量就被释放
            int sum = 100;//定义在方法中的局部变量sum
            System.out.println(sum);//变量的就近原则:使用的都是自己附近的变量,100
            System.out.println(count);
           
            for (int i = 0; i < 10; i++) {//局部变量i只能在循环中使用
                System.out.println(i);
            }
            //System.out.println(i);//报错:无法引用变量i:i cannot be resolved to a variable
        }
    }
    

    2 方法

    2.1 概述

    被命名的代码块,方法可以含参数可以不含参数,可以提高代码的复用性。

    2.2 方法定义的格式

    方法的格式

    2.3 方法调用顺序图

    顺序执行代码,调用指定方法,执行完毕,返回调用位置
    方法的调用顺序

    2.4 练习:测试方法的调用顺序/参数/返回值

    创建包:cn.tedu.method
    创建类:TestMethod .java

    package cn.tedu.method;
    /**本类用于测试方法*/
    public class TestMethod {
    	//1.创建程序的入口函数main()
    	public static void main(String[] args) {
    		System.out.println(1);
    		/**2.我们通过方法名+参数列表的方式来调用方法的功能*/
    		method1();//调用method1()
    		System.out.println(2);
    		method2(3);//调用method2()
    		int result = method3(1,2);//调用method3()
    		System.out.println(result);
    	}
    
    	/**3.如果方法想要返回值,必须修改返回值类型
    	 * 并且return对应类型的结果
    	 * 如果方法的返回值类型是void,不允许有返回值
    	 * */
    	/*本方法用来测试方法的返回值类型*/
    	public static int method3(int i, int j) {
    		/**4.通过return关键字将方法结果返回到调用位置*/
    		return i+j;
    	}
    
    	/**1.方法的修饰符 方法的返回值类型 方法名(方法参数){方法体}*/
    	/*method1()想测试方法的调用顺序*/
    	public static void method1() {
    		System.out.println(5);
    		System.out.println(6);
    		System.out.println(7);
    	}
    	
    	/*本方法用来测试方法的参数,参数的位置在小括号里*/
    	public static void method2(int a) {
    		System.out.println("海绵宝宝今年:"+ a +"岁啦~");
    	}	
    }
    

    2.5 方法的重载

    方法的重载是指在一个类中定义多个同名的方法,但是每个方法的参数列表不同(也就是指参数的个数和类型不同),程序在调用方法时,可以通过传递给他们的不同个数和类型的参数来决定具体调用哪个方法.

    2.6 练习:测试方法的重载

    创建包: cn.tedu.method
    创建类: TestMethodOverload.java

    package cn.tedu.method;
    /**本类用于测试方法的重载*/
    public class TestMethodOverload {
    	public static void main(String[] args) {
    		/**1.我们根据方法名+参数列表确定具体调用哪个方法*/
    		/**2.方法的重载:
    		 * 在同一个类中,存在方法名相同,但参数列表不同的方法
    		 * 如果在同类中,同名方法的参数个数不同,一定构成重载
    		 * 如果在同类中,同名方法的参数个数相同,
    		 * 需要查看对应位置上参数的类型,而不是参数名,与参数名无关
    		 * (int a,String b)与(int b,String a)--不构成重载
    		 * (int a,String b)与(String a,int b)--构成重载
    		 * */
    		//2.调用method()
    		method();
    		//4.调用method(int)
    		method(666);
    		//6.调用method(int,String)
    		method(888,"泡泡");
    	}
    
    	//1.创建一个无参的method()
    	public static void method() {
    		System.out.println("哈哈哈哈我没参数");
    	}
    	//3.创建一个method(int n)
    	public static void method(int n) {
    		System.out.println("哈哈哈哈我的参数是:"+n);
    	}
    	//5.创建一个method(int n,String s)
    	public static void method(int a,String b) {
    		System.out.println(b+"今晚要干他"+a+"碗大米饭");
    	}
    	public static void method(String a,int b) {
    		System.out.println(b+"今晚要干他"+a+"碗大米饭");
    	}
    }
    
    展开全文
  • 记得刚毕业那会儿刚开始转Java的时候,这几个概念还分不太清楚, 弄了还蛮久的,现在把之前做的笔记加上现在自己的理解记录下来。  在Java中,一个类体由2部分构成: 一部分是变量的定义; 一部分是方法的定义(一...

    记得刚毕业那会儿刚开始转Java的时候,这几个概念还分不太清楚, 弄了还蛮久的,现在把之前做的笔记加上现在自己的理解记录下来。


          在Java中,一个类体由2部分构成:
    一部分是变量的定义;
    一部分是方法的定义(一个类中可以有多个方法)  

     

    Java中的变量可以分为成员变量,全局变量

    成员变量和局部变量的区别

           成员变量:(类似于C中的全局变量的概念,所以也可以说是全局变量)

              ①成员变量定义在类中,在整个类中都可以被访问。

              ②成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。

              ③成员变量有默认初始化值。

          局部变量:

              ①局部变量只定义在局部范围内,如:函数内,语句内等,只在所属的区域有效。

              ②局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放。

              ③局部变量没有默认初始化值 

          在使用变量时需要遵循的原则为:就近原则

          首先在局部范围找,有就使用;接着在成员位置找。

    静态变量(也叫做类变量,类属性

          由static修饰的变量称为静态变量,其实质上就是一个全局变量。如果某个内容是被所有对象所共享,那么该内容就应该用静态修饰;没有被静态修饰的内容,其实是属于对象的特殊描述。


    成员变量和静态变量的区别

          1、两个变量的生命周期不同

                成员变量随着对象的创建而存在,随着对象被回收而释放。

                静态变量随着类的加载而存在,随着类的消失而消失。

          2、调用方式不同

                成员变量只能被对象调用。

                静态变量可以被对象调用,还可以被类名调用。

          3、别名不同

                成员变量也称为实例变量。

                静态变量也称为类变量。

          4、数据存储位置不同

                成员变量存储在堆内存的对象中,所以也叫对象的特有数据。

                静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据。

    列表对比:

           成员变量、局部变量、静态变量的区别 

     

    成员变量

    局部变量

    静态变量

    定义位置

     在类中,方法外

    方法中,或者方法的形式参数

    在类中,方法外

    初始化值

    有默认初始化值

    ,先定义,赋值后才能使用

    有默认初始化值

    调用方式

    对象调用

    ---

    对象调用,类名调用

    存储位置

    堆中

    栈中

    方法区

    生命周期

    与对象共存亡

    与方法共存亡

    与类共存亡

    别名

    实例变量

    ---

    类变量



    [java] view plain copy
    1. class Demo{  
    2. <span style="white-space:pre">    </span>int x;// 非静态成员变量,又称为属性,对该类不同的对象来说,属性是不同的  
    3.   
    4. <span style="white-space:pre">    </span>static int y;// 静态成员变量,一个类中只有一个该变量,该类不同的对象共享同一个静态成员变量  
    5.   
    6. <span style="white-space:pre">    </span>public static void main(String[] args){  
    7. <span style="white-space:pre">        </span>int m = 0;// 局部变量,是方法内部定义的变量,只在方法内部可见,在该方法结束后,由垃圾回收器自动回收  
    8. <span style="white-space:pre">    </span>}  
    9.   
    10. }  


    Java中的方法可以分为成员方法,全局方法,构造方法

    [java] view plain copy
    1. public class Test {  
    2.     private int age; //这是成员变量  
    3.     public Test(int age) {  //这是构造方法  
    4.         this.age = age;   
    5.     }  
    6.     public void setAge(int age) {   //这是成员方法  
    7.         this.age = age;  
    8.     }  
    9.     public static int getAge() {    //这是全局方法,加了static关键字,成员方法就变成了全局方法  
    10.         return this.age;  
    11.     }  
    12. }  
    成员方法必须用类的实例化对象进行访问,而全局方法是直接可以用类名.方法名来访问的,构造方法则是实例化对象时进行初始化的
    展开全文
  • Java变量线程安全

    千次阅读 2019-07-11 11:49:58
    一、并发编程的三个概念 原子性 可见性 有序性 二、volatile使用时必须具备的两条件 对变量的写操作不依赖于当前值 解释:volatile修饰的变量当前状态和修改后状态不能产生依赖(即不能用来计数,实现自增自减)...
  • java原子变量

    千次阅读 2015-01-20 17:28:50
    java5后增加了“原子变量”的概念,目前支持的“原子变量”有AtomicInteger、AtomicLong、Integer和Long的“原子数组”变量AtomicIntegerArray和AtomicLongArray。 这些原子变量实现的原理是被称
  •  全局变量是C、C++中的概念,在java中就相当于成员变量    1.成员变量是在方法之外类之内的变量 ,作用范围在类之内(有修饰按修饰范围来),其生命周期随着所在类的产生和消逝而产生和消逝,成员变量随着new...
  • Java变量和常量的定义及初始化

    万次阅读 2019-01-24 11:48:57
     变量是内存中的一个存储区域,该区域有自己的名称(变量名)和类型(数据类型),Java中每个变量必须先声明,后使用, 该区域的数据可以在同一类型范围内不断变化。  2.变量的分类  1)按数据类型  对于不同...
  • java变量的声明和使用

    千次阅读 2018-03-24 20:21:23
    概念变量是指内存中的一个存储区域,该区域要有自己的名称(变量名)、类型(数据类型),该区域的数据可以在同一数据类型的范围内不断变化值;变量的使用注意事项:Java中的变量必须声明后才能进行使用;变量的...
  • java 入门学习(六) java变量

    千次阅读 2013-07-22 16:33:30
    变量Java 程序的一个基本存储单元。变量由一个标识符,类型及一个可选初始值的组合定义。此外,所有的变量都有一个作用域,定义变量的可见性,生存期。是不是很概念化 抽象化,初学者我想一定有很多疑问,那么接...
  • Java 变量定义的时候注意事项

    千次阅读 2017-05-07 10:16:16
    Java语言中,主要是利用final关键字(在Java类中灵活使用Static关键字)来定义常量。当常量被设定后,一般情况下就不允许再进行更改。如可以利用如下的形式来定义一个常量:final double PI=3.1315。在定义这个...
  • 这学期开了java programming这门课程,老师每段时间都会布置一些java的实验,之前就有学了一段时间的java了,然后很久没有写过java代码了,正好趁这个机会再熟悉一下。...1.下载安装JDK并配置环境变量,百度上有很多教
  • java变量的定义和使用

    万次阅读 2012-02-06 17:09:42
    变量  所有的程序都使用变量临时存储各种数据。例如,当程序运行到某个阶段时请求用户输入一个数字,则您要用一个变量存储输入数据...(因为Java要求在使用变量前显式定义变量并声明变量值的类型,所以Java被称为是一
  • Java变量的定义及介绍

    千次阅读 2018-03-06 14:03:08
    1、什么是变量 在计算机语言中用来存储计算结果或表示值2、变量的作用举例 输出Hello xxx,其中xxx是用户通过键盘输入得到的 (1)计算机需要得到用户输入的内容 (2)输出Hello + 第(1)步中用户输入的内容===...
  • Java中的变量和常量

    千次阅读 2019-03-28 20:57:46
    Java 变量和常量的基本概念以及变量作用域范围的讨论
  • Java 基础语法(一) 类、方法、实例变量概念

    千次阅读 多人点赞 2018-12-14 15:46:27
    类、方法、实例变量概念 对象:对象是类的一个实例,有状态和行为。 类:类是一个模板,用来描述一类对象的行为和状态。 方法:方法即行为,一个类可以有多个方法。 实例变量:每个对象都有独特的实例变量,对象...
  • 变量按作用范围划分分为全局变量(成员变量)和局部变量 成员变量按调用方式划分分为实例属性与类属性  (有关实例属性与类属性的介绍见另一博文https://blog.csdn.net/DragonGirI/article/details/81948332) ...
  • Java变量类型间的相互转换

    千次阅读 2017-02-12 16:35:34
    我们知道,Java的数据类型分为三大类,即布尔型、字符型和...相对于数据类型,Java变量类型为布尔型boolean;字符型char;整型byte、short、int、long;浮点型float、double。其中四种整型变量和两种浮点型变量
  • java全局变量

    千次阅读 2008-06-06 17:07:00
    java中全局变量应该放哪儿? ”引发的争论1、单独写一...3、JAVA中不应该有所谓全局变量概念,全局变量严重影响了封装和模块化,所以如果你的程序中需要所谓的全局变量,那一定是你对程序的设计出了问题。4、那JAVA
  • Java简单类、变量详解(概念和分类、声明、命名、初始化)
  • 环境变量这个概念不陌生, 就是操作系统的环境变量。 系统变量就是java本身维护的变量。 通过 System.getProperty 的方式获取。 对于不同的操作系统来说, 环境变量的处理可能会有一些不统一的地方, 比如说:...
  • Java中成员变量的隐藏

    千次阅读 2019-05-31 16:21:47
    Java中成员变量的隐藏 前几天看一篇文章,里面提到了成员变量的"重写"问题,刚看到的时候我非常疑惑,难道成员变量不是和方法一样的重写机制吗?结果当然是啪啪打脸。这个知识点确实是我的知识误区,因为我记得当初...
  • Java violate变量

    千次阅读 2016-04-11 19:51:16
    java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。 Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 ...
  • java基本概念

    千次阅读 2016-12-22 15:48:04
    Java 语言与 C++ 类似,如果用户了解 C++ 和面向对象的概念,就可以很快编写出 Java 程序;此外,Java 又不同于诸如 C++ 语言提供的各种各样的方法,它只提供了基本的方法,这样就减少了编程的复杂性,例如去掉了...
  • Java成员详解-Java成员概念大全

    千次阅读 2017-06-08 10:57:05
    Java成员 变量 方法 构造器 初始化块 内部类
  • Java之成员变量、局部变量和静态变量的区别

    千次阅读 多人点赞 2017-12-04 11:30:24
    之前在刚开始学习Java的时候,就谈了谈Java基础中的变量(见 http://www.linuxidc.com/Linux/2015-02/113862.htm),虽然知道这货以后会经常用到,但没想到了基本语法这里,竟然有冒出来了成员变量、局部变量和静态...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 392,118
精华内容 156,847
关键字:

java变量的概念

java 订阅