变量声明

int a, b, c;         // 声明三个int型整数:a、 b、c
int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值
byte z = 22; // 声明并初始化 z
String s = "runoob"; // 声明并初始化字符串 s
double pi = 3.14159; // 声明了双精度浮点型变量 pi
char x = 'x'; // 声明变量 x 的值是字符 'x'。

Java语言支持的变量类型有:

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

举例:

package hello;

//首先要知道变量应该是赋值以后才能使用的,但是有些不必人为赋值就有默认初始值,但是有些要人为定义初始值
//所以有些直接使用的并不是没有赋值,而是系统自定义了初始值,所以不会报错 public class Variable {
public String instance = "实例变量";
public static String variable = "静态变量"; //静态变量的定义方式
public static String CONST = "静态常量"; //静态常量的定义方式
public static void main(String[] args) {
String local = "局部变量"; //类似这个就是局部变量,不可用访问修饰符修饰,没有默认初始值
System.out.println(local); //局部变量就是在方法或语句块中的变量
Global global = new Global(); //类似这个就是实例变量,也称全局变量
System.out.println(global.instance); //实例变量就必须先把类new一个出来才能使用,因为他是在类中,方法外的
System.out.println(variable); //来瞅瞅静态变量,也叫类变量,静态变量的访问方式1(在自己类的时候)
System.out.println(Global.variable); //静态变量的访问方法2(不在自己类的时候)
}
} class Global{
public String instance = "实例变量"; //实例变量在一个类的里面,语句块的外面
public static String variable = "静态变量";
Global(){ //在类的内部使用自己的实例变量:要么老老实实new一个出来,就像上面那个
//第二种方法就是在函数里面使用实例变量,注意,如果方法是静态方法参照方法1
System.out.println(instance);
System.out.println(variable);
}
public void Instance() {
System.out.println(instance); //静态变量访问方法1(在自己类的时候),静态常量和静态变量访问相同
System.out.println(Variable.CONST);
}
}

类的静态数据成员值被所有对象共享,任何对象都可以访问类的静态数据成员。但是他们使用的是同一个数据,操作的是同一块内存,无论哪个对象修改了它,对其他对象来说,他已经变了

类变量可在类中直接使用,实例变量需实例化后才能使用。

public class StaticTest {
private static int staticInt = 2;
private int random = 2; public static void main(String[] args) {
System.out.println(staticInt);
StaticTest test = new StaticTest();
System.out.println(test.random);
}
}

public class StaticTest {
private static int staticInt = 2;
private int random = 2; public StaticTest() {
staticInt++;
random++;
System.out.println("staticInt = "+staticInt+" random = "+random);
} public static void main(String[] args) {
StaticTest test = new StaticTest();
StaticTest test2 = new StaticTest();
}
}

结果:

staticInt = 3  random = 3

staticInt = 4  random = 3

public class StaticTest {
private static int staticInt = 2;
private int random = 2; public StaticTest() {
staticInt++;
random++;
} public static void main(String[] args) {
System.out.println("类变量与对象变量的值变化");
StaticTest test = new StaticTest();
System.out.println(" 实例1:staticInt:" + test.staticInt + "----random:" + test.random);
StaticTest test2 = new StaticTest();
System.out.println(" 实例2:staticInt:" + test.staticInt + "----random:" + test.random);
System.out.println("静态变量赋值");
System.out.println(" 静态语句块起作用:" + A.staticA);
A a = new A();
System.out.println(" 构造器起作用:" + a.staticA);
a.toChange();
System.out.println(" 静态方法1起作用:" + A.staticA);
a.toChange2();
System.out.println(" 静态方法2起作用:" + A.staticA);
System.out.println("常量赋值");
System.out.println(" 静态语句赋值:" + B.staticB);
}
} class A {
public static String staticA ="A" ;
//静态语句块修改值
static{ staticA ="A1"; }
//构造器修改值
public A (){ staticA ="A2"; }
//静态方法起作用 public static void toChange(){ staticA ="A3"; }
public static void toChange2(){ staticA ="A4"; }
} class B {
public static final String staticB ; // 声明与赋值分离
static{ staticB ="B"; }
}

Java ——变量类型的更多相关文章

  1. Java-Runoob:Java 变量类型

    ylbtech-Java-Runoob:Java 变量类型 1.返回顶部 1. Java 变量类型 在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifie ...

  2. (七)Java 变量类型

    Java 变量类型 在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifier [ = value][, identifier [= value] ...] ...

  3. Java——变量类型

    Java变量类型: 在Java中,所有的变量在使用前必须声明.格式: type identifier [ = value ][, identifier [ =value]-.]; type为Java数 ...

  4. 一、JAVA变量类型:①类变量与实例变量的异同点

    在JAVA中,变量使用前必须声明,格式如下: int a; //单个变量声明 int b, c, d; //多个变量一起声明 int e = 1, f = 2, g = 3; //声明时同时赋值(初始 ...

  5. A02-java学习-classpath配置-标识符-java变量类型

    学习 1, classpath的配置和使用 2, java的标识符命名规则和命名规范 3, 字符编码 4, java的变量类型 5, 程序的入口main方法解释

  6. java变量类型和常量类型

    变量类型 局部变量 实例变量 类变量 public class 变量类型 { //属性:变量 //必须先定义再使用,并初始化 //布尔型:默认值为false //3. 类变量(静态变量) static ...

  7. Java 变量类型

    局部变量 成员变量 类变量 Java局部变量 局部变量声明在方法.构造方法或者语句块中: 局部变量在方法.构造方法.或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁: 访问修饰符不能用于局 ...

  8. Java变量类型识别的3种方式

    内容导览 反射方式,成员变量的类型判断 isInstance用法 利用泛型识别类型 测试类: package com.cxyapi.oo; import java.util.Date; import ...

  9. 一、JAVA变量类型:②局部变量

    局部变量声明在方法.构造方法或者语句块中: public class Test{ public void pupAge(){ int age = 0; //定义age为方法pupAge中的局部变量,并 ...

随机推荐

  1. mv - 移动 (改名) 文件

    摘要 mv [选项]... 源文件 目标文件 mv [选项]... 源文件... 目录 mv [选项]... --target-directory=DIRECTORY SOURCE... 描述 改“源 ...

  2. oracle 主键自增并获取自增id

    1 创建表 /*第一步:创建表格*/ create table t_user( id int primary key, --主键,自增长 username varchar(20), password ...

  3. [ZJOI2006]物流运输(动态规划,最短路)

    [ZJOI2006]物流运输 题目描述 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个码头.物流公司通常会设计一条固定的运输路线,以便对整个 ...

  4. bzoj5099 [POI2018]Pionek 双指针

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=5099 题解 这道题做法似乎挺单一的. (一开始想了个假做法 向量和的长度等于所有向量在其方向上 ...

  5. bzoj4817 & loj2001 [Sdoi2017]树点涂色 LCT + 线段树

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=4817 https://loj.ac/problem/2001 题解 可以发现这个题就是 bzo ...

  6. Mybatis foreach批量插入

    1.foreach的属性 item:集合中元素迭代时的别名,必填 index:在list和array中,index是元素的序号:在map中,index是元素的key,可选 open:foreach代码 ...

  7. Codecombat 游戏攻略(计算机科学三)

    第二关 赋值运算符-=字符串拼串循环语句while // 你可以把字符串连起来,或者把数字连接到字符串. // 一起唱歌,使用字符串连接: // X potions of health on the ...

  8. [ZJU 1004] Anagrams by Stack

    ZOJ Problem Set - 1004 Anagrams by Stack Time Limit: 2 Seconds      Memory Limit: 65536 KB How can a ...

  9. CodeForces 1198C 1199E Matching vs Independent Set

    Time limit 1000 ms Memory limit 262144 kB 这题是一场cf里,div1的第三题,div2的第5题 中文题意 给一张无向图,没说连通性,要你选出一个大小为n的匹配 ...

  10. 【bzoj4136】[FJOI2015]带子串包含约束LCS问题

    题目描述: 带有子串包含约束的最长公共子序列问题可以具体表述如下. 给定2个长度分别为n和m的序列X和Y,以及一个子串包含约束集S. S中共有k个字符串S={S1,S2,…,Sk},其中字符串Si的长 ...