类体中的变量分为两部分。变量定义部分定义的变量为类的成员变量,在方法体中定义的变量和方法中涉及的变量称为局部变量。

成员变量和局部变量的区别:

(1)、成员变量在整个类中都有效,局部变量只在定义它的方法中有效

(2)、成员变量分为实例成员变量(简称实例变量)和类变量(简称静态变量),如果在成员变量类型前加static,这个变量就称为类变量。

(3)、如果局部变量的名字与成员变量的名字相同,则成员变量被隐藏 ,也就是说,这个成员变量在这个方法中暂时失效。

例:

public class Benson{

int x=100,y;

void f(){

int x=10;

y=x;  //这里的y得到的值是10,而不是100

}

}

注意:如果局部变量的名字与成员变量的名字相同,则成员变量被隐藏,这是如果想在该方法内使用成员变量,必须使用this关键字。

例:

public class Employee{

int sideA,sideB,sideC;

void setSide(int sideA,int sideB,int sideC){

this.sideA=sideA; this.sideB=sideB;this.sideC=sideC;

}

}

方法声明包括方法名、返回类型和外部参数。其中参数的类型可以是简单数据类型,也可以是复合数据类型(又称引用数据类型)。

对于简单数据类型来说,实现的是值传递,方法接收参数的值,但不能改变这些参数的值。如果要改变参数的值,则用引用数据类型,因为引用数据类型传递给方法的数据在内存中的地址。

例:

public classPassTest{floatptValue;public void changeInt(intvalue){

value=55;//在方法中对参数进行修改

}public voidchangeObject(PassTest pt){

pt.ptValue=88;///在方法中对引用参数进行修改

}public static voidmain(String argsp[]){int val=11;

System.out.println("初始值:"+val);

PassTest pt=newPassTest();

pt.changeInt(val);//值传递

System.out.println("值传递后:"+val);

pt.ptValue=99;

System.out.println("初始值:"+pt.ptValue);

pt.changeObject(pt);

System.out.println("引用传递后:"+pt.ptValue);

}

}

构造方法是一个特殊的方法。java中每个类中都有构造方法,用来初始化该类的一个对象。构造方法具有和类名相同的名称,而且不返回任何数据类型。同时,构造方法也可以重载。构造方法只能用new操作符调用,当类创建对象的时候使用构造方法。

例:

class Point{

int x,y;

Point(){

x=0;y=0;

}

Point(int x,int y){

this.x=x;this.y=y;

}

}

java成员变量除了方法传递_JAVA类与对象(四)----成员变量与局部变量 、成员方法、构造方法...相关推荐

  1. 学习Java的第五天 | 定义方法 | 引用数据类型——类 | 访问权限-修饰符 | 全局变量与局部变量 | toString | 构造方法 | 方法重载

    前面提到的,冒泡排序,二分查找,我们有时候写代码可能不止要查到一种数组的数据,这时候我们就很需要想循环那样的结构,来帮我们解决代码冗余的情况. 我们前面使用的main方法,是一个java程序的入口,我 ...

  2. java客户姓名添加和查找_java类与对象 演练 客户姓名添加与查看

    java类与对象 演练 客户姓名添加与查看 java类与对象 演练 客户姓名添加与查看 https://www.ixigua.com/6870483106223096327?logTag=_YUmIb ...

  3. java类编来那个初始化顺序_Java类及对象的初始化顺序

    1.初始化规则: 下面规则优先级从前往后依次降低 ①.加载一个类时先加载初始化基类后加载初始化扩展类: ②.类的初始化高于实例的初始化: 类的初始化依靠(静态代码块static{....})以及(静态 ...

  4. java 对象 方法_java——类、对象、方法

    一.类 1.Java语言把一组对象中相同属性和方法抽象到一个Java源文件就形成了类. 一个java文件可以有多个类,但是每一个类都会生成一个class字节码文件. 如果class 前加public ...

  5. java static 变量,和方法从属于类

    第36集 java static 变量,和方法从属于类 可以用类来直接调用static属性和方法 static方法不能调用非静态的属性和方法,反之可以 new产生的对象,不包括static 属性和方法 ...

  6. java编写教师类输出_Java类和对象的区别和联系,超简单易懂!

    在面向对象的编程语言中,类和对象必然是最核心的特性之一.本文主要介绍Java中的类和对象. 示例 以班级成员为例,班上有小红.小明.小李,还有王老师.张老师和魏老师,我们认为他们都属于"人类 ...

  7. 类的成员变量 猜数字游戏一个类A有一个成员变量v有一个初值100。 * 定义一个类对A类的成员变量v进行猜。 * 如果大了则提示大了小了则提示小了。等于则提示猜测成功。

    /** 类的成员变量 猜数字游戏一个类A有一个成员变量v有一个初值100.* 定义一个类对A类的成员变量v进行猜.* 如果大了则提示大了小了则提示小了.等于则提示猜测成功.*/ import java ...

  8. 反射创建对象_如何应用Java反射技术灵活地创建程序类的对象实例

    软件项目实训及课程设计指导--如何应用Java反射技术灵活地创建程序类的对象实例 1.如何应用属性配置文件实现对系统中的配置信息进行读写操作 Java中的属性配置文件主要可以作为软件应用系统及项目的配 ...

  9. 面试轻松讲清楚 Java 面向对象的问题与知识(类与对象,封装,继承,多态,接口,内部类...)

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

最新文章

  1. 这个曾一票难求的AI大会,现在可以抢购早鸟票了丨MEET 2021
  2. DevExpress打印功能 z
  3. lua学习笔记之语句
  4. asp.net使用mysql教程_在C#程序中使用MYSQL数据库
  5. 阿里百度盛大等全业务布局揭秘
  6. php两数相乘,php – 如何将数字相乘,直到达到一位数字并计算数字?
  7. 蓝桥杯基础模块8_1:串口通信收发
  8. BZOJ_1601_[Usaco2008_Oct]_灌水_(最小生成树_Kruskal)
  9. 9.Java 面试题整理(UML 方面 )
  10. python全局变量的声明和使用_python自学篇(第三章:函数)
  11. 经典公开课、好的学习网站
  12. 吊打面试官了解一下?2021年字节跳动春招面试题详解(附详细答案)
  13. Android流程图
  14. Ubuntu Vmware虚拟机网络配置(一)
  15. win10 笔记本 右下角出现 天气的解决办法
  16. realme手机用什么蓝牙耳机好?2022公认音质最好的蓝牙耳机
  17. python求级数的值_python中的级数和
  18. TOPPRA 时间优化算法的轨迹规划安装记录
  19. 计算机科学与技术专接本试题,计算机科学与技术专业专接本入学考试试题.doc...
  20. 微信小游戏egret.getDefinitionByName不能获取类的实例

热门文章

  1. gradle拷贝静态资源文件_android-Gradle Copy任务不会复制文件
  2. 纯手工打造漂亮的垂直时间轴,使用最简单的HTML+CSS+JQUERY完成100个版本更新记录的华丽转身!...
  3. rewind java_Java LongBuffer rewind()用法及代码示例
  4. 5.产品的三种流程图,你都知道吗?
  5. 手机号码替换中间几位为*号
  6. CSS基础-定位-李南江(修)
  7. Java提高篇——equals()方法和“==”运算符
  8. react与微信小程序
  9. 【Java】synchronized与lock的区别
  10. vue引用jquery