类中属性赋值过程

1 、在类的属性中,可以有哪些位置给属性赋值?
① 默认初始化

复制代码
package chapter06_oop1.src.com.atguigu09.bean_uml;

public class UserTest {
    public static void main(String[] args) {
        User u1 = new User();

        System.out.println(u1.age);

    }
}

class User{
    //属性(实际变量)
    String name;
    int age;
}


② 显式初始化

复制代码
public class UserTest {
    public static void main(String[] args) {
        User u1 = new User();

        System.out.println(u1.age);


    }
}

class User{
    //属性(实际变量)
    String name;
    int age = 1;
}


②把①给覆盖了
③ 构造器中初始化

复制代码
package chapter06_oop1.src.com.atguigu09.bean_uml;


public class UserTest {
    public static void main(String[] args) {
        User u1 = new User();

        System.out.println(u1.age);

        User u2 = new User(2);
        System.out.println(u2.age);


    }
}

class User{
    //属性(实际变量)
    String name;
    int age = 1;

    public User(){

    }

    public  User(int a){
        age = a;
    }



}


③把②给覆盖了
④ 通过 " 对象 . 属性 " 或 " 对象 . 方法 " 的方式,给属性赋值
2 、这些位置执行的先后顺序是怎样?
顺序:① - ② - ③ - ④
3 、说明:
上述中的①、②、③在对象创建过程中,只执行一次。
④ 是在对象创建后执行的,可以根据需求多次执行。

相关推荐
lcu1118 分钟前
Java 学习38:ArrayList 类
java
q***25116 分钟前
Spring Boot 集成 Kettle
java·spring boot·后端
筱顾大牛23 分钟前
IDEA使用Gitee来创建远程仓库
java·gitee·intellij-idea
司铭鸿37 分钟前
祖先关系的数学重构:从家谱到算法的思维跃迁
开发语言·数据结构·人工智能·算法·重构·c#·哈希算法
懂得节能嘛.1 小时前
【SDK开发实践】从Java编码到阿里云制品仓库部署
java·阿里云·maven
wavemap1 小时前
先到先得:免费订阅一年ChatGPT Go会员
开发语言·chatgpt·golang
空空kkk1 小时前
SpringMVC——异常
java·前端·javascript
重整旗鼓~1 小时前
1.大模型使用
java·语言模型·langchain
m***D2861 小时前
JavaScript在Node.js中的内存管理
开发语言·javascript·node.js
我叫张小白。1 小时前
JavaScript现代语法梳理:ES6+核心特性详解
开发语言·javascript·typescript·es6