学习笔记--Java中的变量
Java中的变量
/**
* 关于 Java 语言当中的变量:
*
* 1. 什么是变量?
* - 变量的本质上来说是内存空间,这块空间有(数据类型、名字、字面值)
* - 变量包括三部分:数据类型、名称、字面值【数据】
* - 变量是内存中存储数据的最基本的单元
*
* 2. 数据类型的作用?
* - 不同的数据有不同的类型,不同的数据类型底层分配不同大小的空间
* - 数据类型是指导程序在运行阶段应该分配多大的内存空间
*
* 3. 变量要求:“数据”必须与“数据类型”一致,当不一致时编译报错
*
* 4. 变量名:只要是合法标识符即可
*
* 5. 语法格式:
* - 声明:数据类型 变量名;
* int num;
*
* - 赋值:变量名 = 字面值;
* num = 10;
*
* - 声明可以与赋值一起写
* int num = 10;
*
* 6. 赋值后可以再次赋值,首次赋值称为初始化
*
* 7. 有变量的概念了后,内存空间能够被重复使用,提高了利用率
*
* 8. 通过访问一个变量包括两种形式:
* - 第一种:读取 变量中保存的具体数据 get/获取
* - 第二种:修改 变量中保存的具体数据 set/设置
*
* 9. 变量可以在一行声明多个
* int a,b,c;
*
* 10. Java 中的变量必须先声明,再赋值,才能访问
*
* 11. 在同一个“作用域”当中,变量名不能重名,但是变量可以重新赋值
* - 变量的作用域:是描述变量的作用范围
* - 在范围之内可以被访问,只有出了这个范围该变量就无法访问
* - 在不同作用域中可以重名
*
* 12. 变量的作用域范围判定:“出了大括号就不认识了。”
*
* 13. 变量分类:
* -局部变量:在方法体中声明的变量
* -成员变量:在方法体外,类体之内声明的变量
*
* 14. 变量访问遵循就近原则
*/
public class VarTest {
public static void main(String[] args) {
int i; // 声明一个 整型(int)变量,名称为 i
// System.out.println(i);
// 变量 i 并没有初始化,直接编译会报错
i = 10; // 为变量 i 赋值 整数(int) 10,在此为 i 完成了初始化
System.out.println(i); // 正常执行
i = 100; // i 再次赋值
System.out.println(i);
int a,b,c = 300; // 一行可以多个声明
// a,b未初始化,c 初始化为 300,
// System.out.println(a); 编译报错
// System.out.println(b); 编译报错
System.out.println(c);
a = 1;
b = 2;
System.out.println(a);
System.out.println(b);
// System.out.println(k);
// int k = 100;
// 错误,在 Java 方法体中程序是“自上而下”执行
// int i = 10;
// 在同一个“作用域”当中,变量不能重名
int f = 1; // 变量 f 作用域在 方法体 main 内
for(int j = 0; j < 10; j++) {
System.out.println(f);
// 因为 for 包含在 main 内,变量 f 属于 main 方法,没有出 main 的括号
}
// System.out.println(j);
// 报错,因为变量 j 的作用域在 for 循环,“出了大括号就不认识了。”
}
// 成员变量
int i = 200; //方法体外,类体之内,不同作用域中可以重名
}
学习笔记--Java中的变量的更多相关文章
- JavaScript学习笔记——JS中的变量复制、参数传递和作用域链
今天在看书的过程中,又发现了自己目前对Javascript存在的一个知识模糊点:JS的作用域链,所以就通过查资料看书对作用域链相关的内容进行了学习.今天学习笔记主要有这样几个关键字:变量.参数传递.执 ...
- Android学习笔记----Java中的字符串比较
用习惯了C#.C++,在做字符串比较时想当然地使用如下语句: string str1 = "abcd", str2 = "abcd"; if(str1==str ...
- 2.1多线程(java学习笔记) java中多线程的实现(附静态代理模式)
一.多线程 首先我们要清楚程序.进程.线程的关系. 首先进程从属于程序,线程从属于进程. 程序指计算机执行操作或任务的指令集合,是一个静态的概念. 但我们实际运行程序时,并发程序因为相互制约,具有“执 ...
- 设计模式学习笔记——java中常用的设计模式
单例设计模式(Singleton Pattern) 观察者模式(Observer Pattern) 工厂模式(Factory Pattern) 策略模式(Strategy Pattern) 适配器模式 ...
- Java学习笔记-Java中的常用类
Java中有很多类是很常用的,此处列举System,Runtime,Date,Calendar,Math System System:类中的方法和属性都是静态的 字段摘要 static PrintSt ...
- php学习笔记4--php中的变量作用域
变量作用域:可以简单地理解为变量的可见区域,变量能被访问的范围.如同其他语言,php中也有全局作用域和局部作用域之分,但是不同的是:php中的全局作用域指的是:只能在函数外部使用,而局部作用域指的是: ...
- java学习笔记--java中的基本数组[5]
java基础很重要, 今天呆家看java视频,顺便总结前几周看的java书籍,做一下简单的总结:1:数组的声明,2:数组的赋值: 3:数组的方法: 声明一个数组主要有两种方式: //类型 []数组名字 ...
- java学习笔记——java中对象的创建,初始化,引用的解析
如果有一个A类. 1.例如以下表达式: A a1 = new A(); 那么A是类,a1是引用.new A()是对象.仅仅是a1这个引用指向了new A()这个对象. 2.又如: A a2; A代 ...
- JAVA学习笔记:注释、变量的声明和定义、
本文内容: 注释 变量的声明和定义 成员变量和局部变量 首发时间:2018-03-16 15:59 注释: 单行注释:// 多行注释:/* - */ 变量: 变量是内存中的一个存储区域,变量的定义就是 ...
随机推荐
- Linux下安装数据库sqlite3
目录 一.简介 二.安装 三.测试 一.简介 SQLite 是一个软件库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.SQLite 是在世界上最广泛部署的 SQL 数据库引擎 ...
- [BUUCTF]PWN——pwnable_hacknote
pwnable_hacknote 附件 步骤: 例行检查,32位程序,开启了nx和canary保护 本地试运行看一下大概的情况,熟悉的堆的菜单 32位ida载入 add() gdb看一下堆块的布局更方 ...
- TMS570LS3137笔记-内部Flash FEE使用
1.基本简介 TMS570LS3137内部Flash分为三个 Bank,主Flash 数据存储区3MB,是Bank1和Bank2.还有一个Bank7是作为内部Flash模拟EEPROM使用.内部存储器 ...
- CF1166A Silent Classroom 题解
Content 现在有 \(n\) 名学生,我们需要将这些学生分到两个班上.对于两名在同一班级的学生,如果他们的名字首字母相同,他们就会聊天. 现在给定这些学生的名字,问最少有多少对学生会在一起聊天. ...
- 『学了就忘』Linux系统定时任务 — 88、循环执行定时任务
目录 1.crond服务管理与访问控制 2.crontab命令的访问控制 3.用户级别的crontab命令 4.crontab命令的注意事项 5.系统的crontab设置 (1)/etc/cronta ...
- 【LeetCode】26. Remove Duplicates from Sorted Array 解题报告(Python&C++&Java)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 双指针 日期 [LeetCode] https:// ...
- 【LeetCode】572. 另一个树的子树 Subtree of Another Tree(Python & Java)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 方法一:先序遍历 方法二:DFS + DFS 方法三 ...
- 【LeetCode】771. Jewels and Stones 解题报告
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述: 题目大意 解题方法 数组count 字典Counter 日期 题目地址 ...
- 【LeetCode】838. Push Dominoes 解题报告(Python)
[LeetCode]838. Push Dominoes 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博客: http:// ...
- 【LeetCode】373. Find K Pairs with Smallest Sums 解题报告(Python)
[LeetCode]373. Find K Pairs with Smallest Sums 解题报告(Python) 标签: LeetCode 题目地址:https://leetcode.com/p ...