首页 > 编程语言 >Java变量与常量、作用域

Java变量与常量、作用域

时间:2022-08-16 13:57:12浏览次数:44  
标签:初始化 Java 常量 作用域 String int static public 变量

变量与常量、作用域

1、变量(variable)

变量:可以变化的量!

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

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

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

  • 声明格式为:

数据类型 变量名 = 值;

可以使用逗号隔开来声明多个同类型变量(不建议)。 如:int a=1,b=2,c=3;

【演示】

 public class Demo07 {
     public static void main(String[] args) {
         //不建议一行定义多个值,要注重程序可读性
         // int a=1,b=2,c=3;
 ​
         String name = "yejian";
         char x = 'X';
         double pi = 3.14;
    }
 }

2、变量作用域

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

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

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

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

 public class Variable{
 static int allClicks=0; // 类变量,独立于方法之外,用 static 修饰
 String str="hello world"; // 实例变量,独立于方法之外
     
 public void method(){
 int i =0; // 局部变量 在类的方法中
 }    
 }

局部变量

方法或语句块内部定义的变量。生命周期是从声明位置开始到”}”为止。

在使用前必须先声明和初始化(赋初值)。

局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。

【演示】

错误:

 public static void main(String[] args) {
 int i;
 int j = i+5 ; // 编译出错,变量i还未被初始化
 System.out.println(j);
 }

修改后:

 public static void main(String[] args) {
 int i=10;
 int j = i+5 ;
 System.out.println(j);
 }

实例变量

方法外部、类的内部定义的变量。

从属于对象,生命周期伴随对象始终。

如果不自行初始化,他会自动初始化成该类型的默认初始值 (数值型变量初始化成0或0.0,字符型变量的初始化值是16位的0,布尔型默认是false),除了基本类型,其余的默认值都是null

 public class Test {
  // 这个实例变量对子类可见
     public String name;
  // 私有变量,仅在该类可见
  private double salary;
    ...
 }
 public static void main(String[] args){}

类变量

使用static定义。

从属于类,生命周期伴随类始终,从类加载到卸载。

如果不自行初始化,他会自动初始化成该类型的默认初始值。

(数值型变量初始化成0或0.0,字符型变量的初始化值是16位的0,布尔型默认是false)

 public class Employee {
  //salary是静态的私有变量
  private static double salary;
  // DEPARTMENT是一个常量
  public static final String DEPARTMENT = "开发人员";
  public static void main(String[] args){
  salary = 10000;
  System.out.println(DEPARTMENT+"平均工资:"+salary); //开发人员平均工资:10000
  }
 }

3、常量

常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。

常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。

 final 常量名=值;
 final double PI=3.14; final String LOVE="hello";

程序中使用常量可以提高代码的可维护性。

4、变量的命名规范

  1. 所有变量、方法、类名:见名知意

  2. 类成员变量:首字母小写和驼峰原则 : monthSalary

  3. 局部变量:首字母小写和驼峰原则

  4. 常量:大写字母和下划线:MAX_VALUE

  5. 类名:首字母大写和驼峰原则: Man, GoodMan

  6. 方法名:首字母小写和驼峰原则: run(), runRun()

 

本文是学习狂神老师的课程时做的笔记,部分内容参考了狂神老师的视频和随笔

 狂神老师课程链接:https://www.kuangstudy.com/



标签:初始化,Java,常量,作用域,String,int,static,public,变量
From: https://www.cnblogs.com/YeJ1an/p/16591284.html

相关文章

  • Java运算符
    运算符(operator)Java支持如下运算符:算术运算符:+,-,*,/,%,++,--赋值运算符=关系运算符:>,<,>=,<=,==,!=instanceof*逻辑运算符:&&,||,!*位运算符:&,|,^,~,>>,<<,>>......
  • Java第一个程序HelloWorld
    HelloWorld建立一个后缀为.java的文件例:Hello.java编写代码 publicclassHello{ publicstaticvoidmain(String[]args){ System.out.print("......
  • Java基础预习
    一、整数拓展二进制数用0b开头十进制数(不多说)八进制数用0开头十六进制用0x开头 publicclassDemo03{   publicstaticvoidmain(String[]args){......
  • JavaScript中的Object.defineProperty方法
    首先看一下官方的定义:Object.defineProperty()方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性,并返回这个对象。语法Object.defineProperty(obj,pro......
  • java基础
    1、Java的数据类型有哪些?Java的数据类型有:(1)基本数据类型:byte,short,int,long,float,double,char,boolean(2)空类型:void(3)引用数据类型:数组、类、接口、枚举、注解等2、......
  • Java创建多线程的3种方式【杭州多测师】【杭州多测师_王sir】
    /***创建线程的3种方式*1.继承Thread类*2.实现Runnable接口*3.实现Callable接口*4.一个进程可以有多个线程、一个线程对应一个进程*5.防止多线程数据共享和超......
  • Java浅拷贝深拷贝
    Java浅拷贝深拷贝浅拷贝和深拷贝涉及到了Object类中的clone()方法  实现浅拷贝浅拷贝的实现需要类重写clone()方法浅拷贝会创建一个新对象,这个对象有着原始对象......
  • Java注解最全详解(超级详细)
    Java注解是一个很重要的知识点,掌握好Java注解有利于学习Java开发框架底层实现。@mikechenJava注解定义Java注解又称Java标注,是在JDK5时引入的新特性,注解(也被称为元数......
  • JAVA的环境搭建
    第一章 JAVA的环境第一节 Java三大版本JavaSE:标准版(桌面程序、控制台开发)StandardEditor(标准版)J2SE包含构成Java语言核心的类,定位在个人计算机上的应用。这个版本......
  • kettle spoon 修改java安装位置
    CMD运行java-verbose查找JAVA安装位置找到kettlespoon安装目录找到一下位置修改@echooffsetlocalcd/D%~dp0REM****************************************......