www.3112.net > 在JAvA中,stAtiCint=1和int=1的区别在哪里,那位大神能来个通俗易懂的解释

在JAvA中,stAtiCint=1和int=1的区别在哪里,那位大神能来个通俗易懂的解释

据我所知是没有区别的,下面的只是上面的一种简写方式而已.如果i是short类型的是有区别的.short i = 1;// 错误,i+1运算结果是int型,将int类型值赋值给short类型变量需要显式的强制类型转换// i= i+ 1;// 正确,因为没有赋值过程,可以理解为i++,不需要类型的转换,或者也可以说是自动类型的转换i+= 1;

表示a是一个静态变量根据它的位置 可以是静态局部变量或者静态全局变量初始化值为1在程序整个生命周期内它的空间不会被释放

public 访问控制,表示在类外面也可以访问的类内部的信息 static 表示不需要初始化就可以访问,实际是在所有new的类之前就分配给内存的.相当于全局的意思 int 表示整形.

static是静态变量 它是共享的数据,任意对象在任意一处都可以改变它的值 如类中定义 static int a=4 在一处对象A改变了a的值为5. 在对象B中System.out.println(a); 此时输出的值为5 如果不是static类型的则输出结果还是是4

变量引用的差别,在不同的作用域中,就会报错.在类中int a;没有问题.在方法体中 int a;必须要初始化.

static简单的讲就是将一个(变量/方法)变成(类变量/方法,相当于全局的概念)public class test1 { static int a=1; public static void main(String[] args) { System.out.println(a); test1 t = new test1(); t.aaa(); bbb(); } public void aaa(){ System.out.println("普通方法"); } public static void bbb(){ System.out.println("静态方法"); }}不再需要实例化可以直接调用

//static 在java中是静态的,就是类一加载就初始化好了的 static int add(int i,int j){ return i+j; } double add(double i,double j){ return i+j; } public static void main(String[] args) { int i1=3,i2=5; char c1='a',c2='b'; System.out.println(Integer.valueOf(c1));//97 System.out.println(add(c1,i1));//97+3=100 }

int占一个机器字长.如果在32位系统中int占32位,也就是4个字节如果在16位系统中int占16位,即2个字节.short的大小始终为2字节

static 是定义静态变量用的,在程序执行中他只会被初始化一次 比如程序运行过程中a的值被改变后,又执行到static int a=1,这句,此时这句将不会被执行,a不会第二次被初始化.如果是动态变量,int a=1,此时a便会被重新赋值为1

这个要看两种情况的:1. 这个语句是放在函数内,那么这就是一个静态局部变量,当函数结束内存不释放,它的生命周期等同全局变量;2. 这个语句放在函数歪,那么表示这个是一个不可跨文件的全局变量,这个变量不可以被其余的源程序文件extern.

相关搜索:

网站地图

All rights reserved Powered by www.3112.net

copyright ©right 2010-2021。
www.3112.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com