## Java基础(二):变量类型
Java 变量类型
一、局部变量:类的方法中的变量
局部变量声明在方法、构造方法或者语句块中;
局部变量在方法、构造方语句块中被执行的时候创建,当他们执行完成后,变量被销毁
访问修饰符不能用于局部变量中;
局部变量值在声明他的方法、构造方法或者语句块中可见;
局部变量没有默认值,所以局部变量被声明后必须经过初始化才可以使用
实例
package HelloJava; public class JuBuBianLiang {
public void age() {
int age =0;
age = age+7;
System.out.println("小米年龄是: " + age);
}
public static void main(String[] args) {
JuBuBianLiang bianliang = new JuBuBianLiang();
bianliang.age();
} }
二、实例变量
实例变量声明在一个类里面,但是在方法、构造方法和代码块之外;
当一个对象被顺利化之后,每个实例变量的值就会跟着确定;
实例变量在对象创建的时候创建,在对象被销毁的时候销毁;
实例变量的值应该至少被一个方法、构造方法或代码块引用,使得外部能够通过这些方式获取实例变量信息;
实例变量可以声明在使用前和使用后;
访问修饰符可以修饰实例变量;
实例变量对于类中的方法、构造方法、代码块是可见的,一般情况下应该把实例方法设置为私有,通过使用访问修饰符可以实现实例变量对子类可见。
实例变量具有默认值,数值型变量的默认值是0,布尔型变量的默认值是false,引用类型变量的默认值为null。变量的值可以在声明时指定,也可以在构造方法中指定。
实例变量可以直接通过变量名访问,但是在静态方法以及其他类中,就应该使用完全限定名:ObjectReference.VariableName。
实例
package HelloJava;
import java.io.*;
public class ShiLiBianLiang{
// 这个实例变量对子类可见
public String name;
// 私有变量,仅在该类可见
private double salary;
//在构造器中对name赋值
public ShiLiBianLiang (String empName){
name = empName;
}
//设定salary的值
public void setSalary(double empSal){
salary = empSal;
}
// 打印信息
public void printEmp(){
System.out.println("名字 : " + name );
System.out.println("薪水 : " + salary);
} public static void main(String[] args){
ShiLiBianLiang empOne = new ShiLiBianLiang("leon");
empOne.setSalary(1000.0);
empOne.printEmp();
}
}
三、 类变量(静态变量)
类变量也称为静态变量,在类中以static关键词声明,但是必须在方法之外;
无论一个类常见了多少个对象,类只拥有类变量的一份拷贝;
静态变量除了被声明为常量外很少使用,常量是指神明为public/private,final和static类型的变量常量初始化后不可改变;
静态变量存储在静态存储区,经常被声明为常量,很少单独使用static声明变量;
静态变量在第一次被访问时被创建,在程序结束时销毁;
与实例变量具有相似的可见性,但为了对类的使用者可见,大多数静态变量声明为public类型;
默认值和实例变量相似,数值型变量默认为0,布尔型默认为false,引用类型默认为null,变量的值可以在声明的时候指定,也可以在构造方法中指定,此外,静态变量还可以在静态语句中初始化;
静态变量可以通过:ClassName.variableName的方式访问;
类变量被声明为public static final 类型时,类变量名称一般建议使用大写字母,如果静态变量不是public 和final类型,其命名方式与实例变量以及局部变量的命名方式一致。
实例
package HelloJava; public class LeiBianLiang {
// salary 是静态的私有变量
private static double salary;
// DEPARTMENT 是一个常量
public static final String DEPARTMENT ="java开发工程师"; public static void main(String[] args) {
salary = 13000;
System.out.println(DEPARTMENT+"平均工资:"+salary+"元/月");
}
}
## Java基础(二):变量类型的更多相关文章
- java基础(四) -变量类型
在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifier [ = value][, identifier [= value] ...] ; 格式说明:ty ...
- Java基础(二) 基本类型数据类型、包装类及自动拆装箱
我们知道基本数据类型包括byte, short, int, long, float, double, char, boolean,对应的包装类分别是Byte, Short, Integer, Long ...
- 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型
010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...
- Java面试题总结之Java基础(二)
Java面试题总结之Java基础(二) 1.写clone()方法时,通常都有一行代码,是什么? 答:super.clone(),他负责产生正确大小的空间,并逐位复制. 2.GC 是什么? 为什么要有G ...
- Java入土--Java基础(二)
Java基础(二) 接上一讲,我们接着来聊聊Java的一些基础知识,下一讲就会进行流程的控制. 类型转换 首先呢,是类型的转换,接上一个内容的数据类型,类型转换就是数据类型更进一步的应用. 由于Jav ...
- 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错
原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...
- Java基础:变量、常量、作用域
JAVA基础:变量.常量.作用域 变量:可以变化的量.Java是强类型语言,每个变量都必须声明类型. Java变量是程序中最基本的存储单元,要素包括变量名,类型和作用域. //类变量 static s ...
- java基础04-数据类型扩展及面试题
java基础04-数据类型扩展及面试题讲解 public class demo02 { public static void main(String[] args){ // 一.整数拓展: 进制 二进 ...
- Java基础之变量
Java基础之变量 目录 Java基础之变量 1.变量概述 1.1 为什么需要变量 1.2 简单理解 1.3 变量使用注意事项 1.4 程序中+号的使用 1.5 Java数据类型 1.6 整数类型 1 ...
- Java基础之枚举类型Enum的使用
Java基础之枚举类型Enum的使用 定义 public enum AccruedCleanEnum { SPREAD("1","发票"),OTHER(&quo ...
随机推荐
- 定时器+echarts运行时间太长导致内存溢出页面崩溃
最近做的项目需要在页面上展示echarts图表,且数据每隔10s刷新一次,然后发现时间长了以后chorme浏览器会显示页面崩溃.一开始以为是定时器的原因,试了网上的很多方法,比如把setInterva ...
- Stones【中石油个人赛第十七场I】
Stones 题目链接(传送门) 来源:upc12899 题目描述 There are N stones arranged in a row. Every stone is painted white ...
- 【asp.net core 系列】9 实战之 UnitOfWork以及自定义代码生成
0. 前言 在前一篇中我们创建了一个基于EF的数据查询接口实现基类,这一篇我将带领大家讲一下为这EF补充一些功能,并且提供一个解决避免写大量配置类的方案. 1. SaveChanges的外移 在之前介 ...
- Redis命令速查
目录 string list set zset hash 记录下常用的,方便查找 string 内部sds,动态扩容.小于1M加倍扩,大于1M每次扩容1M.最大长度512M. SET name val ...
- WeChair项目Beta冲刺(9/10)
团队项目进行情况 1.昨日进展 Beta冲刺第九天 昨日进展: 项目开始扫尾 2.今日安排 前端:前端工作已经完成 后端:扫码占座后端测试,实现对超时预约座位下座的功能 数据库:和后端组织协商扫 ...
- C语言副本机制
1.除了数组外,其他都有副本机制(包括结构体数组) 2.结构体作为参数具有副本机制,结构体返回值也有副本机制 . 3.函数的参数和返回值都有他的副本机制. #include<stdio.h> ...
- disruptor架构一
Disruptor是一个高性能的异步处理框架,或者可以认为是最快的消息框架(轻量的JMS),也可以认为是一个观察者模式的实现,或者事件监听模式的实现. 在使用之前,首先说明disruptor主要功能加 ...
- 入门大数据---HiveCLI和Beeline命令行的基本使用
一.Hive CLI 1.1 Help 使用 hive -H 或者 hive --help 命令可以查看所有命令的帮助,显示如下: usage: hive -d,--define <key=va ...
- 入门大数据---Spring+Mybatis+Phoenix整合
一.前言 使用 Spring+Mybatis 操作 Phoenix 和操作其他的关系型数据库(如 Mysql,Oracle)在配置上是基本相同的,下面会分别给出 Spring/Spring Boot ...
- python高阶-Linux基础命令集
声明: 1)仅作为个人学习,如有冒犯,告知速删! 2)不想误导,如有错误,不吝指教! 1: 查看文件信息:ls ls常用参数: 参数 含义 -a 显示指定目录下所有子目录与文件,包括隐藏文件 -l 以 ...