Java中类的成员之一:属性(field)

简介: Java中类的成员之一:属性(field)

@[toc]

类的成员之一:属性(field)


语法格式

在这里插入图片描述


变量的分类:成员变量与局部变量

在这里插入图片描述


成员变量(属性)和局部变量的区别

在这里插入图片描述


对象属性的默认初始化赋值

  • 当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。除了基本数据类型之外的变量类型都是引用类型,如上面的Person及前面讲过的数组。

在这里插入图片描述

属性(成员变量) VS 局部变量

1.相同点

​ 1.1定义变量化的格式:数据格式 变量名 = 变量值

​ 1.2先声明,后使用

​ 1.3变量都有其对应的作用域


2.不同点

​ 2.1在类中声明的位置不同

​ 属性:直接定义在类的一对{}内

​ 局部变量:将声明在方法内,方法形参,代码块内,构造器形参,构造器内部的变量

​ 2.2关于权限修饰符的不同

​ 属性:可以在声明属性时,指明其权限,使用权限修饰符

​ 常用的权限修饰符:private、public、缺省、proteced---->封装性

​ (早期声明属性,用缺省就行了)

​ 局部变量:不可以使用权限修饰符

​ 2.3默认初始化值的情况

​ 属性:类的属性根据其类型都有默认初始化值

​ 整型(byte、short、int、long),0

​ 浮点型(float、double),0.0

​ 字符型(char),0(或’\u000‘)

​ 布尔(boolean),false

​ 引用数据类型(类、接口、数组),null

​ 局部变量:没有默认初始化值

​ 意味在调用局部变量之前一定要显式赋值

​ 特别的,形参在调用时,赋值即可

​ 2.4在内存中加载的位置

​ 属性:加载到堆空间(非static)

​ 局部变量:加载到栈空间

举例代码:

public class UserTest {
    public static void main(String[] args) {
        User u1=new User();
        //2.3默认初始化值的情况
        System.out.println(u1.name);//null
        System.out.println(u1.age);//0
        System.out.println(u1.isMale);//false
        //特别的,形参在调用时,赋值即可
        u1.talk("汉语");
    }
}
class User{
    //属性(成员变量)
    String name;
    int age;
    boolean isMale;

    public void talk(String language){//language:形参,局部变量
        System.out.println("我们使用"+language+"进行交流");
    }

    public void eat(){
        String food="烙饼";//局部变量
        System.out.println("北方人喜欢吃:"+food);
    }
}
    }

    public void eat(){
        String food="烙饼";//局部变量
        System.out.println("北方人喜欢吃:"+food);
    }
}

关于Java方法中属性赋值的先后顺序

  • 赋值的位置: ① 默认初始化 ② 显式初始化 ③ 构造器中初始化 ④ 通过“对象.属性“或“对象.方法”的方式赋值
  • 先后顺序:① - ② - ③ - ④
目录
相关文章
|
30天前
Cause: java.sql.SQLIntegrityConstraintViolationException: Column ‘id‘ in field list is ambiguous
Cause: java.sql.SQLIntegrityConstraintViolationException: Column ‘id‘ in field list is ambiguous
18 0
|
1月前
|
Java API
java查询属性个数
【2月更文挑战第11天】
|
2月前
|
存储 Java
深入剖析 Java 类属性与类方法的应用
Java 类属性,也称为字段,是类中的变量。它们用于存储与类相关的数据。 创建类属性 在类定义中声明属性
62 0
|
2月前
|
存储 Java
深入解析 Java 面向对象编程与类属性应用
面向对象编程 (OOP) 是一种编程范式,它将程序组织成对象。对象包含数据和操作数据的方法。 OOP 的优势: 更快、更易于执行 提供清晰的结构 代码更易于维护、修改和调试 提高代码重用性 减少开发时间
65 0
|
4月前
|
Java Maven
Java【代码 16】Milvus向量库工具类和SeetaSDK获取人像向量和属性的工具类分享
Java【代码 16】Milvus向量库工具类和SeetaSDK获取人像向量和属性的工具类分享
50 0
|
4月前
|
JSON Java fastjson
Java【问题 06】一次解决JSON.toJSONString和@RestController首字母大小写问题(特指属性首字母大写变小写)
Java【问题 06】一次解决JSON.toJSONString和@RestController首字母大小写问题(特指属性首字母大写变小写)
53 0
|
4月前
|
Java
【Java代码】反射机制处理传递给mapper文件的非Map类型参数对象(指定属性为空则设置默认值)
【Java代码】反射机制处理传递给mapper文件的非Map类型参数对象(指定属性为空则设置默认值)
28 0
|
4月前
|
存储 Java
Java的接口、类、属性、方法的修饰符使用总结
Java的接口、类、属性、方法的修饰符使用总结
125 0
|
5月前
|
Java 测试技术
Java解析jar包获取MainClass或属性配置
Java解析jar包获取MainClass或属性配置
45 0
|
6月前
|
存储 Java
【JavaSE专栏56】Java 类、对象、属性、方法的概念
【JavaSE专栏56】Java 类、对象、属性、方法的概念