Java变量

Java变量

基本类型对象类型说明位数基本类型
booleanBoolean布尔型10,1
byteByte字节8-128 - 127
shortShort短整型16-32768 - 32767
charChar字符型16‘ \u0000 - u\ffff ’
intInteger整型32-2147483648-2147483647
floatFloat浮点型32-3.40292347E+38-3.40292347E+38
longLong长整型649233372036854477808-9223372036854775807
doubleDouble双精度641.79769313486231570E+308-1.79769313486231570E+308


字节的换算

  • 已知一个字节占8位

eg:

 int 类型  32位/8位 = 4字节
 
 
  • 1

2


变量的定义

1. 定义变量

[访问标识符] [final] 变量类型名[=变量值];

public int a=1;
 
 
  • 1
2. 类变量

每个变量都有默认值

public class Demo2{

        byte by;
        boolean sign;
        char c ;
        short sh;
        float fl;
        int i;
        long l;
        double d;

        public static void main(String args[]){

                System.out.println("byte默认值:" + new Demo2().by);
                System.out.println("boolean默认值:" + new Demo2().sign);
                System.out.println("char默认值:" + new Demo2().c);
                System.out.println("short默认值:" + new Demo2().sh);
                System.out.println("float默认值:" + new Demo2().fl);
                System.out.println("int默认值:" + new Demo2().i);
                System.out.println("long默认值:" + new Demo2().l);
                System.out.println("double默认值:" + new Demo2().d);


                //有关键词的不能定义为变量
                //int int = 10;
                //System.out.println(int);

                String String = "lingdu";
                System.out.println(String);
        }
}

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

1

3. 局部变量

没有默认值,必须要手动赋值


变量的命名规则

  • 1、由字母、数字、标点组成
  • 2、首字母必须以字母字符,$、_下划线开头
  • 3、变量名不能与保留字重名
  • 4、第一个单词的首字母小写,多个单词的第二单词首字母大小

Java关键字

关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量。

详细解释(百度百科):
http://baike.baidu.com/link?url=1i82SJO5lUmnz0peW9A8EQ7N5eQ2T0NB1P4mPpgKvXx36cLXcT2NU1Lc0KkHpx7nRQO6nlHCO4w1koFpWFTQSRCbYAQkKec7B3pFdBFHtYChFHbyXSraD3XG6agmcT_h#1

2


变量的可访问性

3


变量的作用范围

1、类变量

  • 在对象的生命周期中,都可以访问类变量。

2、局部变量

  • 只能在代码段中访问。
public class Demo6{

        //全局变量(类变量)
        int age = 10;

        public void test1(){
                //局部变量,作用范围只在该函数中
                age = 20;
                System.out.println(age);
        }
        public static void main(String args[]){
                //想要引用类变量,必须要实例化一个对象出来
                Demo6 demo = new Demo6();
                demo.test1();


                System.out.println(new Demo6().age);
        }
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

5

值变量与引用变量

值变量

  • 被方法引用时,不会改变原变量的值
  • 包含8种基本类型与对象类型的值

引用变量

  • 被方法引用时,会改变原变量的值
public class Demo3{

        public void test1(int para){
                para = 20;
                System.out.println("para : " + para);
        }
        public void test2(String name){
                name = "lingdu";
                System.out.println(name);
        }
        public static void main(String args[]){
                //值传递
                String name = "my";
                //将name传递给test2()
                new Demo3().test2(name);
                System.out.println("外部对象:" + name);
        }

}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

6


静态变量

7

public class Demo4{
        //定义一个静态变量age
        static short age;

        //定义一个非静态的name
        String name = "lingdu";

        //静态变量
        public static void main(String args[]){
                //静态变量可以直接调用
                System.out.println(Demo4.age);
                //非静态变量需要实例化之后才能调用
                System.out.println(new Demo4().name);
        }
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

8


静态代码块

优先执行静态代码块,最后才执行主方法

public class Demo4{

        //静态代码块
        static{
                System.out.println("我是静态代码块,在程序运行时会先执行!");

                //初始化类
        //      Person person = new Person();
        }


        public static void main(String args[]){
                System.out.println("我是主函数,我在静态代码快执行之后执行");
        }
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

9

每个静态代码块都有一块内存空间
他们是互不影响的
但是静态变量不同,他是相互影响的,如果一个静态变量被改变,则该静态变量的值是被共享的。


常量

常量不可更改

final int i = 0;
 
 
  • 1
public class Demo6{
        public static void main(String args[]){    
            //定义为常量时, 如果再赋值的话就会报错
            final int i = 0;
            i = 10;
        }
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

10

阅读更多
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值