• java 构造器 (构造方法)


    构造器 (constructor,构造方法) 3W what ? why? how? 是什么 , 为什么, 怎么用? 注意事项?

    What ? 是什么: 构造器(又叫构造方法)本身是一种特殊的方法,(但是和方法又没有什么大的关系,习惯上叫构造器,以免和方法混淆,)它只在新对象实例化的时候调用。
    Why ? 为什么用它: 为什么要用构造器 ,如果要实例化新的对象,需要使用关键字new 来完成,但是除了new这个关键字以外,还有可能在对象实例化时为其进行一些初始化的操作准备,这个时候需要构造方法的支持。 所以用构造器就是想让它实现它的作用
    构造器作用就是:1. 创建类的对象
    2. 初始化对象的属性
    构造器的特征
    1.它具与类相同的名称

    2.它不声明返回值类型。(与声明为void不同)

    3.不能被static、final、synchronized、abstract、native修饰,不能return语句返回值
    how ? 怎么用 : 说到怎么用就必须有一定的格式了 ,不能乱用,要有定义格式
    构造器声明格式: 权限修饰符 类名 (形参列表 ,,....) { } (注意构造器没有返回值类型)
    方法的声明格式 权限修饰符 返回值的数据类型 方法名 (形参列表 ,,....) {
    程序语句
    [return 常量或者变量]
    }
    构造器与方法的区别 : 1 声明定义的格式不同 构造器没有返回值类型 ,方法有返回值类型
    2 调用时机不同: 构造器: 是在实例化新对象(new)的时候直接调用,且只调用一次,是与对象创建一起执行的操作
    普通方法:是在实例化对象产生之后,通过 “对象.方法”调用多次

    public TriAngle(){//构造时一定要 构造一个无参数的构造器

    }
    public TriAngle(double b,double h){
    base = b;
    height = h;
    }
    public TriAngle(三个){
    三个
    }
    public Person(String name, int age) {
    this(name, age, null);
    //this.name=name; this.age=age; this.birthDate=null;
    }

    2.说明:
    ①如果在定义一个类时,没有显式的声明类的构造器。那么系统会自动给类提供一个无参的构造器。
    ②如何声明一个类的构造器。格式:权限修饰符 类名(形参列表){ }
    ③如果我们在类中一旦定义类的构造器,那么系统就不再提供默认的无参的构造器了。
    ④类的多个构造器之间,彼此构成重载
    ⑤总结:类中,一定会有构造器!

    3.关于类中属性赋值的先后顺序:
    * ①默认初始化 - ②显式初始化 - ③构造器中初始化 - ④通过"对象.属性" 或 "对象.方法"的方法,给属性赋值
    定义一个类的时候,可以为属性直接设置默认值,但是这个默认值只有在构造执行完成才会设置,否则不会设置
    例: class Book {
    private String title = “java开发”;
    public Book () {} //title现在的默认值跟此构造器没有关系

    }
    本程序中,只有整个构造器都完成后,才会真正的将“java 开发” 这个字符串的内容设置给title属性

  • 相关阅读:
    Uva 11991 Easy Prblem from Rujia Liu ?
    BANK && IT
    随机数发生器(对拍)-----对比测试
    HDU 1695(GCD)
    欧拉定理与费马定理,离散对数定理
    POJ 2352 (stars)
    线段树
    codeforces 51C(Three Base Stations)
    codeforces 165B(Burning Midnight Oil)
    POJ 2785(4 Values whose Sum is 0)
  • 原文地址:https://www.cnblogs.com/loushiqiang/p/7252946.html
Copyright © 2020-2023  润新知