类中属性赋值过程

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

相关推荐
TNTLWT10 分钟前
Qt控件:交互控件
开发语言·qt
量化金策13 分钟前
震荡指标工具
开发语言
北漂老男孩15 分钟前
ChromeDriver进程泄漏问题分析与最佳实践解决方案
开发语言·爬虫
神经毒素19 分钟前
WEB安全--Java安全--shiro550反序列化漏洞
java·安全·web安全·shiro
李迟20 分钟前
Golang实践录:在go中使用curl实现https请求
开发语言·golang·https
hnlucky32 分钟前
Windows 上安装下载并配置 Apache Maven
java·hadoop·windows·学习·maven·apache
运维-大白同学1 小时前
go-数据库基本操作
开发语言·数据库·golang
动感光博2 小时前
Unity(URP渲染管线)的后处理、动画制作、虚拟相机(Virtual Camera)
开发语言·人工智能·计算机视觉·unity·c#·游戏引擎
forestsea2 小时前
Maven 插件扩展点与自定义生命周期
java·maven
蚰蜒螟2 小时前
深入解析JVM字节码解释器执行流程(OpenJDK 17源码实现)
开发语言·jvm·python