• Java学习笔记十五:Java中的成员变量和局部变量


    Java中的成员变量和局部变量

     

     

    一:成员变量;

    成员变量在类中定义,用来描述对象将要有什么

    成员变量可以被本类的方法使用,也可以被其他类的方法使用,成员变量的作用域在整个类内部都是可见的

    二:局部变量;

    在类的方法中定义,在方法中临时保存

    只能被当前方法使用,局部变量的作用域仅限于定义它的方法

    如:

    public class Telphone {
    
        
        float screen;    //成员变量
        float cpu;        //成员变量
        float mem;        //成员变量
        
        public void call(){
            int score;//局部变量
            System.out.println("Telphone有打电话的功能");
        }
        public void sendMessage(){
            System.out.println("screen:"+screen+"cpu:"+cpu+"mem"+mem+"Telphone有发短信的功能");
        }
        
    }

    三:成员变量与局部变量的区别;

    1.作用域不同;

    局部变量的作用域仅限于定义它的方法

    成员变量的作用域在整个类内部都是可见的

    举例如下:

    Telphone类代码如下:

    package com.test;
    
    //1.定义一个类
    public class Telphone {
    
        
        float screen;
        float cpu;
        float mem;
        int var;//定义一个成员变量
        
        public void call(){
            System.out.println("var"+var);//这里调用var变量
            System.out.println("Telphone有打电话的功能");
        }
        public void sendMessage(){
            System.out.println("var"+var);//同上
            System.out.println("screen:"+screen+"cpu:"+cpu+"mem"+mem+"Telphone有发短信的功能");
        }
        
    }

    InitailTelphone类代码如下:

    (关于InitailTelphone类的创建我在笔记14有记录)

    package com.test;
    
    public class InitailTelphone {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
                
                Telphone phone = new Telphone();
                phone.sendMessage();
                //给示例变量赋值
                phone.screen=5.0f;
                phone.cpu=1.4f;
                phone.mem=.0f;
                //调用对象的方法
                phone.sendMessage();
            }
        
    
    }

    运行InitailTelphone类的结果:

    注:这里说明var变量是可以被call方法和sendmessage方法调用的,由于变量var默认值为0,所以var值为0

     

    2.初始值不同;

    Java会给成员变量一个初始值

    Java不会给局部变量赋予初始值

    且在同一个方法中,不允许有同名局部变量

    在不同方法中,可以有同名局部变量

    代码举例:

    3.两类变量同名时,局部变量具有更高的优先级;

    方法会优先使用成员变量的值

  • 相关阅读:
    求文件的hash值(基于SHA3的Hash)
    Discrete Log Algorithms :Baby-step giant-step 【二】
    非专业填坑
    xml转换csv
    使用PowerShell批量注册DLL到GAC
    ui-grid 中cellTemplate中click事件
    ui-grid样式,表格高度自适应行高,没有滚动条,去掉表头
    ui-grid使用详解
    数组过滤重复元素
    正则表达式验证邮箱
  • 原文地址:https://www.cnblogs.com/pureqh/p/9142025.html
Copyright © 2020-2023  润新知