类中属性赋值过程

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 、说明:
上述中的①、②、③在对象创建过程中,只执行一次。
④ 是在对象创建后执行的,可以根据需求多次执行。

相关推荐
Wang15307 小时前
jdk内存配置优化
java·计算机网络
散峰而望7 小时前
【算法竞赛】C++函数详解:从定义、调用到高级用法
c语言·开发语言·数据结构·c++·算法·github
冷凝雨7 小时前
复数乘法(C & Simulink)
c语言·开发语言·信号处理·simulink·dsp
CoderCodingNo7 小时前
【GESP】C++五级真题(贪心思想考点) luogu-B4071 [GESP202412 五级] 武器强化
开发语言·c++·算法
0和1的舞者8 小时前
Spring AOP详解(一)
java·开发语言·前端·spring·aop·面向切面
Wang15308 小时前
Java多线程死锁排查
java·计算机网络
MoonBit月兔8 小时前
年终 Meetup:走进腾讯|AI 原生编程与 Code Agent 实战交流会
大数据·开发语言·人工智能·腾讯云·moonbit
智航GIS8 小时前
8.2 面向对象
开发语言·python
小小星球之旅8 小时前
CompletableFuture学习
java·开发语言·学习
jiayong239 小时前
知识库概念与核心价值01
java·人工智能·spring·知识库