Java学习(3)——语言基础

1 Java 主类结构

包声明

一个Java程序是由若干个类组成的。
语句package Number声明该类所在的包为Number。

声明成员变量和局部变量

类的全局变量(成员变量):类的属性 声明在类体中
局部变量:方法中的属性 声明在方法体中

编写主方法

main()方法是类体中的主方法,从{开始到}结束。
public、static、void分别是main()方法的权限修饰符、静态修饰符、返回值修饰符。

Java中的main()方法必须声明为public static void。

导入API类库

Java中通过import关键字导入相关的类。
API文档是程序开发人员不可或缺的工具

2 基本数据类型

有8种基本数据类型来存储数值、字符和布尔值。

  1. 数值型
    整数类型 byte short int long
    浮点类型 float double
  2. 字符型
  3. 布尔型

整数类型

十进制:不能以0开头,0除外
八进制:必须以0开头
十六进制:必须以0x或0X开头

数据类型 占用空间(位) 字节
byte 8 1
short 16 2
int 32 4
long 64 8

每种类型都有取值范围,如byte为-128~127
超出范围会出错
对于long型,若赋给的值超出int范围,则需要在数字后加L或1,表示该数值为长整数
如:long num = 2147483650L

浮点类型

数据类型 占用空间(位) 字节
float 32 4
double 64 8

小数默认被看作double型
若使用float则需要在后面添加F或f。
double后面D或d,可加可不加。

字符类型

  1. char型
    字符类型char用于存储单个字符,占用16位,2字节的内存空间。
    单引号' '为字符型变量
    双引号" "为字符串,即使只有一个字符。

定义char字符变量

char x = 'a';
char x = 97;

二者等价

  1. 转义字符
    与C中含义相同。
    将转义字符赋值给字符变量时,与字符常量值一样,需要使用单引号。

  2. 布尔类型
    只有true和false两个值。
    不能与整数类型转换。
    boolen b = true;

3 变量与常量

标识符和关键字

  1. 标识符
    第一个字符不能是数字
    由任意顺序的字母、下划线、美元符号和数字组成,且不能是Java中的保留关键字。

  2. 关键字
    不可以作为标识符来使用。

声明变量

变量占用的内存空间

程序执行时,程序代码会加载到内存中的程序区,数据暂时存储在数据区中。

Java中允许使用汉字或其他语言文字作为变量名
int 年龄 = 21
但建议尽量不要使用这些语言文字作为变量名。

声明常量

在Java中声明常量,除了要指定数据类型以外,还需要通过final关键字进行限定。
final常量只能被赋值一次。
final double PI = 3.1415926D;

常量名通常使用大写字母
当定义的final常量属于“成员变量”时,必须在定义时就设定它的初值,否则将会产生编译错误。

变量的有效范围

  1. 成员变量
    类体中所定义的变量。
    在整个类中都有效。
    分为两种:
    实例变量:int x = 45;
    静态变量(类变量):static int y = 90;
    静态变量的有效范围可以跨类,可以直接以类名.静态变量的方式在其他类内使用。

  2. 局部变量
    在方法内部定义,“{”与“}”之间的代码中声明的变量,只在当前代码块中有效。

变量的有效范围

4 运算符(基本与C无二)

  1. 赋值运算符

  2. 算术运算符


  3. 自增和自减运算符


  4. 比较运算符


  5. 逻辑运算符

注意结合方向

&与&&的区别:
&会判断两个表达式
&&当第一个表达式为false时不去判断第二个了,直接输出结果从而节省计算机判断的次数。

  1. 位运算符
    针对两个整形数据a、b的对应位进行逻辑运算。

按位与&
按位或|
按位取反~
按位异或^
移位操作

移位操作
可以实现整数除以或乘以2n
例如:
y<<2与y*4的结果相同;y>>1与y%2的结果相同。

左移<< 右移>> 无符号右移>>>

左移:移空部分补0

右移:如果最高位是0 ,右移空的位就填0;
如果最高位是1,则右移空的位就填1。


右移 最高位是1的情况

无符号右移:左侧被移空的高位都填入0

移位运算符适用的数据类型有:
byte short char int long

  1. 三元运算符
    条件式?值1:值2
    条件式值为true,取1,否则取2。
    等价于
    if …… else语句

数据类型转换

  1. 隐式类型转换


  2. 显示类型转换


代码注释与编码规范

注释

  1. 单行注释 //
  2. 多行注释
/*
注释内容
*/

多行注释中可嵌套单行注释

多行注释中不可嵌套多行注释

  1. 文档注释
    /** 注释 */

编码规范

  1. 每条语句单独一行,分号结束
  2. 尽量每个变量的声明单独占一行
    对于局部变量应在声明的同时对其进行初始化。
  3. Java中关键词之间的多个空格均被视作一个。
  4. 多加注释
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容