常量、变量、静态变量和实例变量

一、变量

  • 成员变量:在类中直接声明,成员变量可以不被初始化,可以直接使用(为默认值)。
  • 局部变量:在方法中声明的变量,使用前必须赋值。

二、常量

- 在类中声明,用final关键字修饰,必须要初始化,一旦不能被再改变
- 常量名称习惯大写

package com.CoderLB;

import java.util.Scanner;

public class Hi {
    public static  double num;//在方法之外(类中)直接声明的变量就是成员变量(类的成员变量)

    //定义常量
    public static final double NUMBER=100.00;//
    public static void main(String[] args) {
        //可否修改
        //NUMBER=129.00;//常量不能被修改
        System.out.print(num);


    }

}

三、静态变量和实例变量

成员变量分为:静态变量和实例变量

  • static修饰的成员变量为静态变量,保存在一块共享空间(方法区:static修饰的变量或者方法信息),这个区叫作全局数据区,保存在这个区的数据是共享的。
  • 静态变量是该类创建的每个实例对象的共享变量例如以下school=“河海大学”,只给了s1对象。而s2,s3共享。
  • 静态变量可以使用“类名.属性名”和“对象名名.属性名”的方式访问,所以静态变量又叫做类变量。
  • 非静态变量只能使用“对象名名.属性名”的方式访问,依赖对象(实例(如s1)存在),所以叫作实例变量。
public class Main {

    public static void main(String[] args) {
        System.out.println("第一个学生姓名:"+s1.name+"学校是:"+Student.school);


    }
}

package com.CoderLB;

public class Student {
    //为了方便操作数据,就不定义为私有属性(严格来说要定义为私有属性的)
    String name;//实例变量。对象名.属性名访问
    int age;//实例变量,对象名.属性名访问
    static String school;//静态变量,每个对象共享。类名称.属性名访问
}

package com.CoderLB;

public class Main {

    public static void main(String[] args) {
        Student s1 = new Student();
        s1.name="李四";
        s1.age=18;
        s1.school="河海大学";
        Student s2 = new Student();
        s2.name="张三";
        s2.age=18;
        //s2.school="河海大学";
        Student s3 = new Student();
        s3.name="王五";
        s3.age=18;
        //s3.school="河海大学";
        System.out.println("第一个学生姓名:"+s1.name+",学校: "+s1.school);
        System.out.println("第二个学生姓名:"+s2.name+",学校: "+s2.school);
        System.out.println("第三个学生姓名:"+s3.name+",学校: "+s3.school);



    }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值