类中属性赋值过程

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

相关推荐
永远有缘32 分钟前
Java、Python、C# 和 C++ 在函数定义语法上的主要区别
java·c++·python·c#
任风雨2 小时前
13.2.3.Tomcat
java·tomcat
qq_336313935 小时前
java基础-字符串
java
纵有疾風起6 小时前
C++—string(1):string类的学习与使用
开发语言·c++·经验分享·学习·开源·1024程序员节
Molesidy6 小时前
【随笔】【QT】QT5.15.2版本的最新下载方式!!!
开发语言·qt
二进制person7 小时前
Java EE初阶 --多线程2
java·开发语言
yue0087 小时前
C#理论学习-WinForm实践开发教程总结
开发语言·学习·c#
007php0078 小时前
某游戏大厂 Java 面试题深度解析(四)
java·开发语言·python·面试·职场和发展·golang·php
Mr.Jessy8 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html