JAVA基础入门——基本语法、变量

1.1Java的基本语法

1.1.Java代码的基本格式

Java中的程序代码都必须放在一个类中。格式如下:

修饰符 class 类名{

    程序代码

}

 在编写Java代码时,需要特别注意几个关键:

1.Java中的程序代码可分为结构定义语句和功能执行语句,其中结构语句用于声明一个类或方法,功能执行语句用于实现具体的功能。每条功能执行必须用分号(;)结束

其中要注意  英文(;)和  中文(;)的区别,写成中文会出现 "illegal character"(非法字符) 这样的错误信息。

2.Java语言是严格区分大小写的。

3.为了程序代码的整齐美观,层次清晰,可读性考虑,要注意格式排版

1.2Java中的注释

在编写程序时,为了使代码容易阅读,通常会在实现功能的同时为代码加一些注释。

注释是对程序某个功能或某行代码的解释说明,它只在Java源文件中有效,在编译程序时编译器会忽略这些注释信息,不会编译到class字节码文件中去。其中有三种注释:

1.2.1单行注释

通常用于对程序中某一行代码进行结束 用符号 ' // ' 表示,  ' // '后面为被注释的内容

int a =1;   //定义一个整型变量

1.2.2多行注释

通常用于注释多行代码 符号 " /*  */ ",在其中间进行注释

/*  int b=2;

    int c=3;  */

1.2.3.文档注释

文档注释是对一段代码概括的解释说明,可以用javadoc 命令将文档注释提出来生成帮助文档。

文档注释以 ” /** “为开头,并在注释内容末尾以”*/“结束。

PS:文档注释中可以嵌套 单行注释,但不能潜逃多行注释。

版权信息

版权信息必须在java文件的开头。如

/**

* Copyright © 2002 Co.Ltd.

* All right reserved.

*/

其他不需要出现在 javadoc 的信息也可以包含在这里

1.3Java中的标识符

编译过程中,java对包、类、方法、参数和变量等要素命名时使用的字符序列称为标示符。

1.3.1标示符的命名规则

  1. 由字母、数字、下划线(_)和美元符号($)组成;
  2. 不能以数字开头;
  3. 区分大小写;
  4. 不能是java中的保留字和关键字;
  5. 包名所有的字母一律小写;例如cn、itcase、test
  6. 类名首字母大写,变量名和方法名首字母小写;例:ArratList、Iterator
  7. 常量名所有的字母都大写,单词之间用下划线连接,例如 DAY_OF_MONTH
  8. 变量名和方法名的第一个单词首字母小写,从第二个单词开始每个单词首字母大写,例:lineNumber. getLineNumber;
  9. 驼峰式命名:studentName;见名之意(使用有意义的英文单词)

1.4 常量

 常量就是在程序中固定不变的值,是不能改变的数据。

1.整型常量:整数类型的数据,有二进制八进制、八进制、十进制和十六进制4种表示形式。

     二进制:由数字1和0组成的数字序列。在JDK7.0中允许使用字面值来表示二进制数,前面要由0b或0B开头,目的是为了和十进制进行                        区分,如0b01101100

    八进制:必须以0开头并且其后由0~7范围内(包括0~7)的整数组成的数字序列。如:0372

    十进制:由数字0~9范围内(包括0~9)的整数组成的数字序列。第一位不能是0

    十六进制:必须以0x或者0X开头并且其后由0!9,A~F(包括在内)组成的数字序列。如:0x25AF

2.浮点数常量:就是在数学中用到的小数。分为float单精度浮点数和double双精度浮点数类型。浮点数常量还可以通过指数形式                              来表示。

3.字符常量:用于表示一个字符,一个字符常量要用一对英文半角格式的单引号 '' 引起来,它可以是英文字母数字,标点符号以                          及由转义序列来表示的特殊字符。

4.字符串常量:字符串常量用于表示一串连续的字符,一个字符串常量要用一对英文半角格式的双引号""引起来。

5.布尔常量:即布尔型的两个值true和false,该常量用于区分一个事物的真与假。

6.null常量:常量只有一个值null,表示对象的引用为空。关于null常量将会在后面详细介绍。

整型常量进制之间的转换

1.十进制和二进制之间的转换

2.二进制和八进制、十六进制之间的转换

3.请自己去看书学。

1.5变量

1.5.1变量:jvm在内存中开辟的一个很小的存储空间,作用是用来存储数据,变量必须定义一种类型

1.5.2.命名规则

  1. 可以使用字母,数字,_和$组成自由组合,但是数字不能开头
  2. 大小写敏感
  3. 可以使用汉字,但是不建议使用
  4. 不能使用关键字(java保留字)
  5. 要符合驼峰命名法 尽可能的做到见名知意(名称由多个单词组成时,从第二个单词开始,每个单词的首字母大写)

1.5.3.使用规则:

                     作用域:即从定义开始,到所在的大括的结束符号。出了作用域,想使用需要重新定义和初始化

  1. 必须先定义(声明,创建)和初始化
  2. 变量可以重复使用 即可以进行多次存取操作。不需要强调类型但是存储数据时一定要与第一次声明时的类型匹配
  3. 变量的作用域:变量有自己的使用范围。出了范围,变量失效。

1.5.4.变量的初始化及使用

 

1.5.5变量的数据类型 

在定义变量时必须声明变量的类型,在为变量赋值时必须赋予和变量同一种类型的值,否则会程序会报错

Java中变量的数据类型分为两种,及基本数据类型和引用数据类型。

应用数据类型中还可以多两项:枚举(enum)和注释(annotion)

 

 

  1. 除特殊情况,所有变量(尤其局部变量)在定义时都应赋予相应类型的初始值。主数据类型中Boolean类型为false;数值类型为0;Char类型为null。对象类型为null(数组也是对象)。
  2. 返回的对象类型在使用前应检查是否为null
  3. 对内存使用有要求的程序,在使用对象后应赋予null值。
分类数据类型关键字占用字节默认值取值范围
整型类字节byte10-2^7~2^7-1
短整形short20-2^15~2^15-1
整形int40-2^31~2^31-1
长整型long80L-2^63~2^63-1
字符型字符型char2′\u 0000′′\u 0000′ ~ ′\u FFFF′
浮点类单精度型float40.0F-3.4E38~3.4E38
双精度型double80.0D-1.7E308~1.7E308
逻辑类逻辑型bolean1FalseTrue、False
  1. Java中默认的整数类型是int,如果要定义为long ,则要在数值后加上L或者l
  2. 默认的浮点型是双精度浮点,如果要定义float,则要在数值后面加上f或者F
  3. 一个字节等于8位,1个字节等于256个数。
  4. 一个英文字母或者阿拉伯数字占一个字节
  5. 一个汉字占2个字节
  6. 范围大小从大到小排序:double>float>long>int>short>byte
  7. 精度大小从大到小排序:(int,long,float,double) long>int>double>float

1.5.6符合两原一封要求:
     原则1: byte,short,char在计算时,先转换成int类型,再计算
     原则2:两个不同类型的数据做运算,会转成较大类型的数据,再计算

1.5.7变量的类型转换:

类型转换:
   1.自动转换(隐式转换)
     必须满足两个条件:第一是两种数据类型彼此兼容,第二是目标类型的取值范围大于源类型的取值范围。     

byte b = 5;
short b1 = b;//8位的5赋值给16位5,在前面自动添8个0

int  c1 = -1;
long c2 = c1;//32位的-1赋值给了64位的c2里,自动填了32个11

 

   2、强制转换(显示转换)
     当两种类型彼此不兼容,或者目标类型取值范围小于源类型时,自动类型转换无法进行,就需要强制类型转换。也就是占内存大的类型      变量赋值给占内存小的类型变量,需要强制转换。

PS:但有可能出现精度损失。
 

int a = 1;
byte a1 = (byte)a;
   
long b = -10;
int  b1 = (int)b;

3.表达式类型自动提升

所谓表达式是指由变量和运算符组成的一个算式。变量在表达式中进行运算时,也有可能发生自动类型转换,这就是表达式u类型的一个自动提升,如:一个byte型的变量在运算期间类型会自动提升为int型。

public class Example{
    public static void main(String[] args){
    byte b1=3;       //定义一个byte类型的变量
    byte b2=4;
    byte b3=(byte)(b1+b2);   //两个byte类型变量相加,赋值给一个byte类型变量
    System.out.println("b3="+b3);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值