变量

  • 变量是什么:就是可以变化的量
  • Java是一种强类型语言,每个变量都必须声明其类型
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
type varName [=value] [{,varName[=value]}];
// 数据类型 变量名 = 值;也可以使用逗号隔开来声明多个同类型的变量

注意事项

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型
  • 变量名必须是合法的标识符
  • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束
public class Demo03 {
public static void main(String[] args) {
int a,b,c;
int d=1,e=1,f=1;
String name = "葛老头";
char x = 'x';
double g = 4.45;
}
}

变量作用域

  • 类变量
  • 实例变量
  • 局部变量

类变量

  • 含义:暂时理解为带static就为类变量;书写位置位于Demo04类的第一个花括号里面;后面面向对象笔记时,会有详述
  • 声明:static 变量类型 变量名 = 值
  • 作用域:整个Demo04类
  • 引用:直接引用,输入变量名即可

实例变量

  • 含义:从属于对象;书写位置位于Demo04类的第一个花括号里面;后面面向对象笔记时,会有详述
  • 声明:变量类型 变量名 = 值  (不赋值时有默认值,代码模块有对应变量类型的默认值)
  • 作用域:整个Demo04类
  • 引用:先变量类型 变量名 = new 类名类名.变量名
    • 由于实例变量从属于对象,所以先要用new一个对象来接,类的实例变量
    • 由于是实例变量,所以变量类型是引用类型,引用的是当前类;变量类型因此为Demo04
    • 具体使用变量时就是类名.变量名

局部变量

  • 含义:当前方法里面的变量,是局部的
  • 声明:变量类型 变量名 = 值  (局部变量必须声明且赋值)
  • 作用域:当前方法
  • 引用:直接引用,输入变量名即可
public class Demo04 {

    // 类变量 static
static double salary = 2500; // 实例变量:从属于对象;如果不赋值的话,会有默认值
// 布尔型:默认是false
// 引用类型:默认是null
// 八大基本类型:默认是0
String name;
int age; // main方法
public static void main(String[] args) { //局部变量;必须声明和赋值
int i =10;
System.out.println(i); // 实例变量的引用
// 变量类型 变量名字 = new Demo04();
Demo04 demo04 = new Demo04();
System.out.println(demo04.age);
System.out.println(demo04.name); // 类变量的引用
System.out.println(salary); }
}

常量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值
  • 所谓的常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变
final 常量类型 常量名 = 值;
final double PI = 3.14;
  • 常量名一般使用大写字符
public class Demo05 {

    // final和static是修饰符不存在先后顺序
// final修饰这个变量为常量
// static 修饰这个变量作用域为类变量
static final double PI = 3.14;
final static double UI = 3.14; public static void main(String[] args) {
System.out.println(PI);
System.out.println(UI);
}
}

变量的命名规范

  • 所有的变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰规则,除了第一个单词以外,后面的单词首字母大写,如:monthSalary
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线。如:MAX_VALUE
  • 类名:首字母大写和驼峰原则
  • 方法名:首字母小写和驼峰原则,如:runRun()

Java基础系列(11)- 变量、常量、作用域以及变量的命名规范的更多相关文章

  1. 夯实Java基础系列11:深入理解Java中的回调机制

    目录 模块间的调用 多线程中的"回调" Java回调机制实战 实例一 : 同步调用 实例二:由浅入深 实例三:Tom做题 参考文章 微信公众号 Java技术江湖 个人公众号:黄小斜 ...

  2. Java工程师学习指南第1部分:夯实Java基础系列

    点击关注上方"Java技术江湖",设为"置顶或星标",第一时间送达技术干货. 本文整理了微信公众号[Java技术江湖]发表和转载过的Java优质文章,想看到更多 ...

  3. java基础06-变量、常量、作用域

    java基础06-变量.常量.作用域 一.变量 变量是什么:就是可以变化的量! java是一种强类型语言,每个变量都必须声明其类型. java是一种强类型语言,每个变量都是必须声明其类型. java变 ...

  4. 夯实Java基础系列3:一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!

    目录 目录 string基础 Java String 类 创建字符串 StringDemo.java 文件代码: String基本用法 创建String对象的常用方法 String中常用的方法,用法如 ...

  5. 夯实Java基础系列14:深入理解Java枚举类

    目录 初探枚举类 枚举类-语法 枚举类的具体使用 使用枚举类的注意事项 枚举类的实现原理 枚举类实战 实战一无参 实战二有一参 实战三有两参 枚举类总结 枚举 API 总结 参考文章 微信公众号 Ja ...

  6. Java基础系列--static关键字

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/8477914.html 一.概述 static关键字是Java诸多关键字中较常使用的一个,从 ...

  7. Java基础系列--HashMap(JDK1.8)

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10022092.html Java基础系列-HashMap 1.8 概述 HashMap是 ...

  8. 夯实Java基础系列1:Java面向对象三大特性(基础篇)

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 [https://github.com/h2pl/Java-Tutorial](https: ...

  9. 夯实Java基础系列4:一文了解final关键字的特性、使用方法,以及实现原理

    目录 final使用 final变量 final修饰基本数据类型变量和引用 final类 final关键字的知识点 final关键字的最佳实践 final的用法 关于空白final final内存分配 ...

  10. 夯实Java基础系列9:深入理解Class类和Object类

    目录 Java中Class类及用法 Class类原理 如何获得一个Class类对象 使用Class类的对象来生成目标类的实例 Object类 类构造器public Object(); register ...

随机推荐

  1. CPU 指令环 ring0,ring1,ring2,ring3

    Intel的CPU将特权级别分为4个级别:RING0,RING1,RING2,RING3. Windows只使用其中的两个级别RING0和RING3,RING0只给操作系统用,RING3谁都能用.如果 ...

  2. noip模拟14

    T1 离散化后线段树维护\(dp\),\(fi\)表示最小值为\(i\)时最多点亮多少个, 区间操作即可. Code #include<cstring> #include<cstdi ...

  3. vue+cesium初探(一) 加载cesium

    参考文章1:https://www.cnblogs.com/laixiangran/p/4984522.html 参考文章2:https://blog.csdn.net/weixin_41940497 ...

  4. list切片

    对list进行切片 取一个list的部分元素是非常常见的操作.比如,一个list如下: >>> L = ['Adam', 'Lisa', 'Bart', 'Paul'] 取前3个元素 ...

  5. mzy git学习,分支以及分支合并(四)

    git 鼓励大量使用分支:最后进行master和分支之间的合并 git branch git branch 查看当前有多少分支,并且将当前在使用的分支用*标注出来. [一定要注意git的分支有从属概念 ...

  6. 未解决的html页面banner对不齐

    莫名其妙的问题,记录等待解决: 怎么讲呢?就是可能真的没有理解这句话,浏览器是否是需要这句话的,思考! <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...

  7. io中的特殊流Properties

    对于去年学习IO的时候一些代码贴上来: 初识properties,因为继承自hashtable,其中可以使用put操作: package special; import java.util.Prope ...

  8. 模拟文件上传(三):使用apache fileupload组件进行文件批量上传

    其中涉及到的jar包 jsp显示层: <%@ page language="java" import="java.util.*" pageEncoding ...

  9. Spring Data JPA:解析CriteriaQuery

    CriteriaQuery 源码定义 CriteriaQuery定义在包路径javax.persistence.criteria下,其定义如下: /** * The <code>Crite ...

  10. RabbitMQ(一):入门

    前言 最近学习了尚硅谷-RabbitMQ 受益匪浅,根据自己的理解做了下笔记,不正确的地方欢迎指正 正文 RabbitMQ是一个消息中间件,相当于一个中转站:用于接收.存储.转发消息数据 Rabbit ...