这个章节是讲述java的基本语法,如果是学过C语言,C++,那么学习java的语法就是轻车熟路了,因为就其语法本身并不难,不过还是复习一下吧


1首先,java的标识符是怎么命名的呢?
    标识符要由下划线,字母,美元符,或者数字组成,
    标识符应以字母,下划线,美元符开头。
    java严格区分大小写。
    约定俗成的是,java标识符选取应该是注意“见名知意”,也不能与java关键字重复

2a让我们说说java的常量吧

     java的常量与其他语言所指的常量不完全一样,java的常量是指写在程序没什么变化的,可以直接 使 用的有以下几种常量区分不同的数据类型:

           整型常量如133
           实型常量2.33
           字符常量如’a‘
           逻辑常量如true,false
           字符串常量如”helloW“
           注意字符常量是用单引号,而字符串则是用双引号
           另外要说的就是”常量“,在c++中大家一定知道const这个关键字,它是说不可变的变量,也叫做常量。在java中的final关键字有异曲同工的功效等到后面在跟大家介绍吧


2 b java的变量又是如何的呢?
    变量其实是一小块内存的区域,一个程序运行的时候,是位于内存里面,开始运行,每个变量使用之前必须先声明,然后进行赋值(并且一定要赋值,否则编译报错当然我说的是局部变量。当成员变量不初始化使用java会默认为它初始化,所以局部变量会像后娘养的,如果不初始化就是错的了,这个可是局部变量和成员变量的一个重要区别哦),,也就是在内存中的一个区域填充内容,以后直接通过它的名字使用它。 说了变量,那么我们就顺便讲讲java变量的分类,我们根据不同的侧重点将其分类.

      A按被声明的位置划分:
        a: 方法内部的称为局部变量
        b:方法外部类内部的称作成员变量
  

     B按所属的数据类型分类:
        a :基本数据类型变量
        b :引用数据类型变量

看个例子区分一下吧:

public class HelloWorld {
    public int m = 0;//这个就是成员变量

    public static void main(String args[]) {

        int i = 4; //这个i就是局部变量
        System.out.println(i);
    }
}

class OK{

    private int i = 50;//这个i就是成员变量
}


说到变量是分配在内存区域中的,所以我们刨根究底一下,稍微学习深入一点,说说一个程序执行的过程

吧。

首先,程序被加载到内存区域,因为操作系统的代码也在内存区域,所以操作系统的代码会在内存中的代

码段寻找到程序的入口地址也就是MAIN(),然后开始执行,然而当程序加载的时候其实内存是被分成了四

个部分,第一个部分是代码段,它是用来存放我们程序的代码,然后呢,是数据段,它是用来存放静态变

量和字符串常量,还有就是堆(heap)和栈(stack),stack是用来存放局部变量,而堆是存放,动态申请

内存的东西,简单的说也就是我们需要new的东西,关于new是什么呢,我们以后会慢慢讲解现在只要知

道内存被分配成四个部分。


变量的讨论还没有结束,还有一个小地方差点被我遗漏了,那个就是变量的作用域,现在呢,我先用现有

的知识去理解吧。

    得到一个简单的一句话就能得知怎么区分变量的作用域了,就是找到他所属的他括号,就在定义它的最

近的大括号内部它是有意义的,也就是”临近原则“,离自己最近的大括号内部。光这么说没什么意思,让我

们在一个程序中区分吧。

public class HelloWorld {
   
    int j = 20;
   
    public static void main(String args[]) {

        int i = 10;
        System.out.println("ij=" + j);//这个输出正确吗??当然正确啦


        boolean a = false;
       
        if(b) {
           
              System.out.println("b is " + b);

long l = 2030303;
        }
       
       System.out.println(l);//这个是错误的,l的作用域只有在 if语句的括号范围内才是有效的
    }
}