一、命名规范

  1. 所有变量、常量、方法、类 都使用英文单词 命名,要见名知意
  2. 所有变量、方法 的命名都使用小驼峰法 :首字母小写的驼峰命名法。例如:sampleText
  3. 的命名都使用大驼峰法 :首字母大写的驼峰命名法。例如:SampleText
  4. 常量 的命名:所有字母大写,单词间用 '_'分隔例如:SAMPLE_TEXT

二、变量

  • 变量(variable)顾名思义就是指可以变化的量。我们通过变量来操纵内存存储空间中的数据,变量就是指代这个存储空间。存储空间的位置是确定的,但是里面放置什么内容不确定。

  • Java是一种强类型语言,每个变量都必须声明其类型

  • 变量是Java程序中最基本的存储单元,其要素包括变量名变量类型作用域

  • 变量在使用前必须对其声明,只有在变量声明以后,才能为其分配相应长度的存储单元。声明格式为:

    /* 数据类型 变量名 = 值; */
    type varName [=value] [{,varName[=value]}];
    /* 可以使用逗号隔开来声明多个同类型变量。
    虽然可以在一行声明多个变量,但是不提倡这个风格,逐一声明每一个变量可以提高程序可读性。 */

注意:

  1. 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
  2. 变量名必须是合法的标识符。
  3. 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。

示例:

String str1;
String str2 = "2";
int num1, num2, num3;
int num4 = 4, num5 = 5, num6 = 6;

三、变量作用域

变量根据其作用域 可以分为三种变量:

  1. 类变量静态变量: static variable):独立于方法之外的变量,用static 修饰。

  2. 实例变量成员变量:member variable):独立于方法之外的变量,不过没有static修饰。

  3. 局部变量(lacal variable):类的方法中的变量。

示例:

public class variable{
static int staticVar = 1;//类变量(静态变量)
int memberVar = 2;//实例变量(成员变量)
public void method(){
int lacalVar = 3;//局部变量
}
}

Ⅰ、类变量

  • 方法外部、类的内部定义的变量。
  • 必须使用static修饰符 修饰。
  • 从属于生命周期伴随类的始终,从类加载到卸载。
  • 如果不手动初始化,它会自动初始化成该类型的默认初始值。
  • 数值型变量初始值为0或0.0,字符型变量的初始值为'\u0000',布尔型初始值为false,引用类型初始值为null。

Ⅱ、实例变量

  • 方法外部、类的内部定义的变量。
  • 从属于对象生命周期伴随对象始终
  • 如果不手动初始化,它会自动初始化成该类型的默认初始值。
  • 数值型变量初始值为0或0.0,字符型变量的初始值为'\u0000',布尔型初始值为false,引用类型初始值为null。

Ⅲ、局部变量

  • 方法或代码块内部定义的变量。
  • 生命周期是从声明位置开始,到方法或代码块最后的 '}'为止
  • 局部变量没有默认值,所以在使用前必须先声明和初始化(赋初始值),才可以使用。

四、常量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
  • 常量是一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
  • 程序中使用常量可以提高代码的可维护性,避免不规范赋值导致程序出错的情况。
  • 必须使用final修饰符 修饰。

示例:

/* final 数据类型 常量名 = 初始值;
final type constantName = initializeValue; */
final double PI_VALUE = 3.14;

Java基础语法:变量与常量的更多相关文章

  1. Java基础:变量、常量、作用域

    JAVA基础:变量.常量.作用域 变量:可以变化的量.Java是强类型语言,每个变量都必须声明类型. Java变量是程序中最基本的存储单元,要素包括变量名,类型和作用域. //类变量 static s ...

  2. java基础:变量、常量与作用域

    变量就是可以变化的量,每个变量都必须声明其类型,Java 变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域.作用域 类变量 实例变量 局部变量常量初始化后不能在改变值,不会变动的值,它 ...

  3. Java基础(变量数&常量&据类型&类型转换)

    什么是变量: 变量就是一个不固定的数值,它随时会改变,就像银行卡里存的钱一样会变动. 变量的格式:1  数据类型 变量名=变量值:  2  数据类型 变量名: 变量名=变量值: 变量的三大要素:1变量 ...

  4. java基础之变量和常量、类型转换

    一.     变量 变量是可改变的量,每赋个值便会开辟一个新内存地址. 1.首先,变量需要一个声明,例如:int a,这个a也可以当作是一个标签,它指向了一个内存地址,这个地址是属于int类型的套餐, ...

  5. JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

    Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...

  6. 020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结

    020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结 本文知识点:变量与常量 知识总结 Java中的标识符 Java中的关键字 目前常 ...

  7. 019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例

    019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例 本文知识点:Java中的数据类型转换案例 学习视频有误,导致没法写文,文章内容 ...

  8. 018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念

    018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念 本文知识点:Java中的数据类型转换 类型转换 类型转换分类 2类,分别是: ...

  9. 017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例

    017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例 本文知识点:变量 相同类型的变量可以一次同时定义多个 例:可以一行代码同时定义2个变量x ...

  10. 016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值

    016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值 本文知识点:字面值 关于字面值的概念,需要注意:很多地方,我们可能就把字面值 ...

随机推荐

  1. Flink-v1.12官方网站翻译-P013-Timely Stream Processing

    及时的流处理 介绍 及时流处理是有状态流处理的一种扩展,其中时间在计算中起着一定的作用.其中,当你做时间序列分析时,当做基于某些时间段(通常称为窗口)的聚合时,或者当你做事件处理时,事件发生的时间很重 ...

  2. Codeforces Round #657 (Div. 2) A. Acacius and String(字符串)

    题目链接:https://codeforces.com/contest/1379/problem/A 题意 给出一个由 '?' 和小写字母组成的字符串,可以将 '?' 替换为小写字母,判断是否存在一种 ...

  3. Codeforces Round #604 (Div. 2) B. Beautiful Numbers(双指针)

    题目链接:https://codeforces.com/contest/1265/problem/B 题意 给出大小为 $n$ 的一个排列,问对于每个 $i(1 \le i \le n)$,原排列中是 ...

  4. hdu1890 Robotic Sort (splay+区间翻转单点更新)

    Problem Description Somewhere deep in the Czech Technical University buildings, there are laboratori ...

  5. hdu3938 Portal

    Problem Description ZLGG found a magic theory that the bigger banana the bigger banana peel .This im ...

  6. Codeforces Round #307 (Div. 2) B. ZgukistringZ

    Professor GukiZ doesn't accept string as they are. He likes to swap some letters in string to obtain ...

  7. Codeforces #6241 div2 C. Orac and LCM (数学)

    题意:给你一个数列,求所有子序列对的\(lcm\),然后求这些所有\(lcm\)的\(gcd\). 题解:我们对所有数分解质因数,这里我们首先要知道一个定理: ​ 对于\(n\)个数,假如某个质数\( ...

  8. mitmproxy 代理工具介绍:rewrite和map local实现

    在接口测试中,会用到抓包工具或者代理工具,常用代理工具包括charles. burpsuite. fiddler.mitmproxy等,ssh -D参数 可实现socks5代理.网络嗅探工具可以使用t ...

  9. git push bug

    git push bug fast-forwards $ git push $ git push --help # git pull $ gp To http://git.xgqfrms.xyz:88 ...

  10. js var & let & const All In One

    js var & let & const All In One js var & let & const 区别对比 var let const 区别 是否存在 hois ...