在实例中说明java的类变量,成员变量和局部变量
java中一般有三种变量:类变量,成员变量和局部变量。类变量
1.下面先看类变量,看下面这个例子
public class Demo6{
public String name;
public int age;
public static String sex="男";
public Demo6(String name, int age){
this.name = name;
this.age = age;;
}
public void say(){
System.out.println("我的名字是"+name+",我今年"+age+"岁.");
}
public static void main(String args[]){
Demo6 obj = new Demo6("alex",25);
obj.say();
System.out.println("我是"+sex+"生");
// System.out.println("我今年"+age+"岁");
}
}
类变量可以无需实例化便可访问(ps:如果一个实例改掉了类变量的值,其他实例调用此类变量值时也是改动后的)
如果去掉注释
System.out.println("我今年"+age+"岁");
,则会报错:Error:(19, 34) java: /Users/lsf/IdeaProjects/JavaPractice/src/Demo6.java:19: 无法从静态上下文中引用非静态 变量 age
2.接下来来看成员变量和局部变量,还是看这个例子,做一点小改动
public class Demo6{
public String name;
public int age;
public static String sex="男";
public Demo6(String name1, int age){
this.name = name1;
this.age = age;;
}
public void say(){
System.out.println("我的名字是"+name+",我今年"+age+"岁.");
// System.out.println("我的名字是"+name1+",我今年"+age+"岁.");
}
public static void main(String args[]){
Demo6 obj = new Demo6("alex",25);
obj.say();
System.out.println("我是"+sex+"生");
}
}
当执行下面这句时结果是正确的:
System.out.println("我的名字是"+name+",我今年"+age+"岁.");
这是因为name是成员变量,在整个实例中有效。而name1是局部变量,只在方法体内有效,如果像下面这样直接调用name1,则会报错
System.out.println("我的名字是"+name1+",我今年"+age+"岁.");
报错信息为:
Error:(13, 36) java:找不到符号
符号: 变量 name1
位置: 类 Demo6
在实例中说明java的类变量,成员变量和局部变量的更多相关文章
- 【java基础】成员变量和局部变量
成员变量和局部变量 根据定义变量位置的不同,可以将变量分为成员变量和局部变量 成员变量是在类范围内定义的变量 局部变量是在一个方法内定义的变量 成员变量可以分为: ...
- 【java基础】成员变量和局部变量02
成员变量和局部变量(2) 成员变量的初始化和内存中的运行机制 当系统加载类或者创建类的实例的时候,系统会自动为成员变量分配内存空间,并自动指定初始值. package object; ...
- java类的成员变量和局部变量的区别
转自:https://jingyan.baidu.com/article/03b2f78c1ba2d05ea237ae9b.html 在类中位置不同:成员变量:在类中方法外.局部变量:在方法定义中或者 ...
- java基础之成员变量与局部变量
成员变量的含义 局部变量的含义 成员变量与局部变量的区别
- Java中字段、属性、成员变量、局部变量、实例变量、静态变量、类变量、常量
首先看个例子: package zm.demo; public class Demo { private int Id;//成员变量(字段).实例变量(表示该Id变量既属于成员变量又属于实例变量) p ...
- 【Java基础】成员变量和局部变量的区别
在类中的位置不同 成员变量:在类内部方法外部 局部变量:在方法体内部定义的或者方法的参数中定义的在内存中的位置不同 成员变量:在堆内存,有初始化值,byte,short,int,long->0, ...
- 第3章 Java语言基础----成员变量与局部变量
在对局部变量进行赋值时,不能对非静态字段age进行静态引用,图1错误,加上static后图二正确,图3与图4类似,如下图所示: 图1图2 图3图4 2.成员变量times在类中定义,局部变量times ...
- Java 成员变量和局部变量
1.成员变量 在类中定义,用来描述对象将要有什么. 2.局部变量 在类的方法中定义,在方法中临时保存数据. 成员变量和局部变量的区别 作用域不同: 局部变量的作用域仅限于定义它的方法 成员变量的作用域 ...
- Java的类成员变量、实例变量、类变量,成员方法、实例方法、类方法
总是被这些相似的概念搞晕,查阅了资料后做个小总结,以变量为例,方法辨析类似. 1.多胞胎名字汇总辨析 成员变量和成员方法是范围最大的定义,提到成员变量就可以理解成你所定义在一个类体中的各类变量的统称, ...
随机推荐
- Android执行程序或脚本的方法
Java中提供了两种方法来执行程序或脚本: (1) 使用Runtime的exec()方法 (2) 使用ProcessBuilder的start()方法 ProcessBuilder.start() 和 ...
- Android的系统属性SystemProperties
创建与修改android属性用Systemproperties.set(name, value) 获取android属性用Systemproperties.get(name) 注意:android属性 ...
- Android 图片的颜色处理
仿造美图秀秀移动鼠标调整seekbar,调整图片的颜色 项目布局如下: <LinearLayout xmlns:android="http://schemas.android.com/ ...
- tomcat常见错误及解决方案
一,tomcat启动时错误 1:The JAVA_HOME environment variable is not defined This environment variable is neede ...
- MVC WebAPI 三层分布式框架开发
版权声明:本文为博主原创文章,未经博主允许不得转载. 前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层分布式框架开发,以此适用于企业信息系统的业务处理 ...
- Android简单加密保护自有图片资源
现在大部分android应用的图片资源,被反编译后就可以直接拿来用,如果不想让自己的图片资源直接被反编译后使用,首先想到的应该是把图片加密.这里笔者抛砖引玉,草草写了一个对图片进行简单加密的方法,希望 ...
- 大家一起和snailren学java-(13)字符串
“好久没有写这个系列了.其实也有在看,不过觉得一些很基本的都写上来没意思.现在打算的是将整本书看完后,最后整合为一篇blog,筛选出一些平时没有注意到的或者更深入的理解” 在写程序中,字符串Strin ...
- 使用Gradle构建构建一个Java Web工程及持续集成环境Jenkins配置
安装Eclipse插件——Buildship 什么是Buildship? Buildship能方便我们通过Eclipse IDE创建和导入Gradle工程,同时还能执行Gradle任务. Eclips ...
- 配置mysql远程访问权限,大家可能掉过的那些坑~
1 作为互联网技术从业人 或者粗暴点说:作为一个程序猿.测试从业者 如果没掉过一些坑,都不好意思说自己混过技术圈 2 今天重点讲:mysql开启远程访问权限的那些坑- 对于mysql开启远程访 ...
- day 2 Linux目录结构
Linux系统的目录结构的基本介绍: 1)在逻辑上的所有目录(包括目录下的子目录)都在最高级别的目录“/”下. 根(/)目录是Linux系统中所有目录的起始点(顶点),根下面的目录及子目录是一个有层次 ...