变量是我们经常用到的一种,我在刚学 Java 的时候,也经常被各种变量的概念折磨,当时并没有细抠,但是我在写一篇类似的文章中,想把变量作为一种小标题来简述一下,但是发现,变量这个概念还是比较繁琐的,本篇文章就来深入认识一下 Java 中这些变量的概念。
公司主营业务:成都网站制作、成都网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出烟台免费做网站回馈大家。
变量汇总
所以,到底有哪些变量的概念呢?距今为止,目前已知的变量主要有:
下面我们就采用各个击破的方式来认识每个概念。
实例变量
实例变量又被称为Instance variables。不使用 static 关键字定义,并且在任何方法、构造方法、块之外的变量都是实例变量。实例变量都是基于特定实例的,实例变量不会在实例之间共享,也就是说,每一个对象的实例都有自己的一个实例变量。下面是实例变量的一个例子
- class Fruits {
- public String fruitName; // 具有公共访问权限的 fruitName;
- private int fruitNum; // 具有私有访问权限的 fruitNum;
- }
你可以使用下面这种方式进行实例变量的调用
- public class Fruits {
- public String fruitName;
- private int fruitNum;
- public static void main(String[] args) {
- Fruits fruits = new Fruits();
- fruits.fruitName = "strawberry";
- fruits.fruitNum = 100;
- }
- }
1. 如何识别实例变量
那么我如何知道一个变量它是实例变量呢?下面是一些关于实例变量的定义规则
实例变量带有默认值,也就是说,实例变量不用初始化就能使用。下面是常用实例变量的初始值
2. 实例变量的特点
上面我们了解了实例变量的基本特征和如何区分实例变量,下面我们来讲一下实例变量的特点。
二、全局变量
全局变量又被称为Global variables。如果你有其他语言的编程经验,比如 C、C++ 的话,你会接触到全局变量这个概念,你可以使用下面代码来创建全局变量
- #include
- // 全局变量
- int A;
- int B;
- int Add()
- {
- return A + B;
- }
但是在 Java 中,是不存在全局变量的。因为 Java 是一门面向对象的编程语言,所有的内容都是属于类的一部分。Java 这么做的原因是为了防止数据和类成员被其他程序的其他部分有意或者无意的修改。所以在 Java 中,使用 静态变量 来起到全局访问的目的。
三、静态变量
静态变量又被称为Static variables。静态变量的定义比较简单,静态变量是属于该类的变量,它是由 static 关键字来修饰的。static 修饰的变量属于静态变量,它只能定义在类的内部、方法的外部。
静态变量的特点:
静态变量只能使用 static 关键字进行修饰,它不能在方法中进行声明,不论是静态方法还是非静态方法。
- public class Fruits {
- public String fruitName;
- private int fruitNum;
- static String fruitType;
- public static void main(String[] args) {
- Fruits.fruitType = "apple"; // 类名.变量名
- System.out.println(fruitType);
- }
- }
四、类变量
类变量又被称为 Class variables在 Java 中,类变量就是静态变量,它们都用 static 关键字进行修饰,所以,如果你再听到说静态变量的时候,它也就是类变量。
五、局部变量
还有一种说法,说 Java 中只有类变量、实例变量和局部变量。这么分也没有问题,可能有人会问到,你把成员变量和常量放在哪了?别着急我们后面会说
先来说一下什么是局部变量:
局部变量又称为 Local variables。它指的是在方法中、构造器中或者块代码中定义的变量。局部变量的生命周期随方法、构造器、代码块的执行完毕而销毁。
不管上面的一些变量概念如何变换、局部变量都站如松,坐如钟,行如风,卧如弓,从容应对各种不同文章的比较。真是一个省事的变量。
那么这么好的东西我们可要仔细研究一下其特点是啥:
六、成员变量
什么?成员变量在 Java 中就是实例变量?这个结论对吗?
常量
验证过程为了验证这个结论,我们求助于 stackoverflow 网站
我们搜索 java member variable and instance variable 就帮我们定位到了这个标题
大致意思是:什么是成员变量?成员变量和实例变量是否相同呢?我们下面有个回答
第一句就给出,实例变量和类变量都称为成员变量,然后给出了 JDK 官网手册对变量的定义。意思是在 Java 中,只有三种类型的变量
嗯。或许还不是很好解决我们的问题,我带着问题再次求助 JDK 官网手册,又看到了关于 Variables 的定义
意思是在 Java 中,只有下面几种类型的变量(别扯别的了,莫非你比官网还靠谱?)
- public static void main(String[] args) {}
其中的 args 是不是就是 String 的数组的变量,我们也称其为参数,所以参数也没有关键字进行声明,标识其为参数也只是取决于其声明位置。
总结
所以我写了一篇文章为了给你讲清楚,现在你应该知道 Java 中到底有哪些变量了吧。
如果你用 static 来定义变量,只能是类变量、或者说静态变量、而且其定义位置只能在类中,方法或代码块外,变量的副本只有一个。
如果你不用 static 来声明变量,那么就会有三种变量的叫法
也就是下面代码所描述的这样
- public class VariablesInJava {
- int instanceVariable; // 实例变量
- static String staticVariable; // 类变量
- public void method() {
- String localVariable = "localVariable"; // 局部变量
- System.out.println(localVariable);
- }
- public static void main(String args[]) {} //参数
- }
新闻名称:都说变量有七八种,到底谁是Java的亲儿子
浏览地址:http://www.shufengxianlan.com/qtweb/news48/396598.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联