这个章节是讲述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语句的括号范围内才是有效的。
}
}