Java官方教程(六-4)Providing Constructors 构造方法(2021.4.5)

news/2024/5/19 1:02:08 标签: java, Java官方文档, 构造方法, 构造函数

前言

本文是橙子出于兴趣爱好对Java官方教程的尝试翻译,几乎每日更新,感兴趣的朋友可以关注一下橙子;翻译过程中尽可能多的对一些关键词保留了英文原文,如果你想看最纯正的英文原版教材却又看不懂,可以试着来看一下橙子的翻译版啊,欢迎大家留言讨论,冲鸭!
更多相关文章点击阅读
Java官方教程目录2021最新版

Providing Constructors for Your Classes 提供构造方法

一个类包含构造方法构造方法用来根据类的蓝图创建对象。构造方法的声明类似于方法的声明,不同之处在于构造方法使用类的名称,并且没有返回类型。例如,Bicycle类的一个构造方法

java">public Bicycle(int startCadence, int startSpeed, int startGear) {
    gear = startGear;
    cadence = startCadence;
    speed = startSpeed;
}

要创建一个名为myBike的新Bicycle对象,则需要用new 运算符调用构造方法

java">Bicycle myBike = new Bicycle(30, 0, 8);

new Bicycle(30, 0, 8)在内存中为对象开辟空间并且实例化(initializes)其字段(fields)。
一个类可以包含多个构造函数,包括无参构造:

java">public Bicycle() {
    gear = 1;
    cadence = 10;
    speed = 0;
}

Bicycle yourBike = new Bicycle();调用无参构造创建一个叫作yourBike的新对象。

上方的两个构造函数都可以在Bicycle类中声明,因为它们有不同的参数列表。与方法一样,Java语言根据列表中参数的数量和类型来区分构造方法。如果在一个类中编写两个参数数量和类型相同的构造方法,将会造成编译时错误(compile-time error)。

可以不为一个类提供任何构造函数,编译器将自动为没有任何构造函数的类提供无参构造。该默认构造方法将调用父类的无参构造方法。如果父类没有无参构造方法,编译器将会报错,因此在这种情况下必须验证父类是否拥有构造函数。如果一个类没有显式的父类,则它有一个隐式的父类——object,object类有无参构造。

一个类可以使用超类的构造函数,将在后续的接口和继承的课程中进行讨论。

可以在构造函数的声明中使用访问修饰符,以此来控制其它哪些类可以调用构造函数

注意:如果一个类不能调用MyClass的构造函数,则它不能直接创建MyClass的对象。


http://www.niftyadmin.cn/n/969678.html

相关文章

BZOJ 1625: [Usaco2007 Dec]宝石手镯【01背包】

1625: [Usaco2007 Dec]宝石手镯 Time Limit: 5 Sec Memory Limit: 64 MB Description 贝茜在珠宝店闲逛时&#xff0c;买到了一个中意的手镯。很自然地&#xff0c;她想从她收集的 N(1 < N < 3,402)块宝石中选出最好的那些镶在手镯上。对于第i块宝石&#xff0c;它的重量…

Java官方教程(六-5)Passing Information to a Method or a Constructor 传信息给方法(2021.4.6)

前言 本文是橙子出于兴趣爱好对Java官方教程的尝试翻译&#xff0c;几乎每日更新&#xff0c;感兴趣的朋友可以关注一下橙子&#xff1b;翻译过程中尽可能多的对一些关键词保留了英文原文&#xff0c;如果你想看最纯正的英文原版教材却又看不懂&#xff0c;可以试着来看一下橙…

BZOJ 1626: [Usaco2007 Dec]Building Roads 修建道路【MST】

1626: [Usaco2007 Dec]Building Roads 修建道路 Time Limit: 5 Sec Memory Limit: 64 MB Description Farmer John最近得到了一些新的农场&#xff0c;他想新修一些道路使得他的所有农场可以经过原有的或是新修的道路互达&#xff08;也就是说&#xff0c;从任一个农场都可以经…

SAP 最新SAP ECC6 SR3 ehp4 集成BI/BW虚拟机,已编译带accessKe...

2019独角兽企业重金招聘Python工程师标准>>> ** SAP顾问学院的PA培训视频(FI/CO/PP/SD/MM/ABAP/BASIS/BW/PS/PM/PLM/QM/WM/CRM/HR),清单如下&#xff1a; 1.【FI】FI资深顾问STEVEN讲的全套PA视频 2.【CO】CO资深顾问WangHai讲的全套PA视频 3.【BW】BW资深顾问GuoYu…

Java官方教程(七-1)Objects 对象(2021.4.7)

前言 本文是橙子出于兴趣爱好对Java官方教程的尝试翻译&#xff0c;几乎每日更新&#xff0c;感兴趣的朋友可以关注一下橙子&#xff1b;翻译过程中尽可能多的对一些关键词保留了英文原文&#xff0c;如果你想看最纯正的英文原版教材却又看不懂&#xff0c;可以试着来看一下橙…

《Android开发案例驱动教程》发源码了

《Android开发案例驱动教程》 《Android开发案例驱动教程》15&#xff0c;16&#xff0c;17源码 目 录 出版说明 前言 第1章 Android操作系统概述 1 第2章 Android开发环境搭建 3章 第一个Android程序 19 第4章 Android UI基础 58 第5章 UI基础…

Java官方教程(七-2)Creating Objects 创建对象(2021.4.9)

前言 本文是橙子出于兴趣爱好对Java官方教程的尝试翻译&#xff0c;几乎每日更新&#xff0c;感兴趣的朋友可以关注一下橙子&#xff1b;翻译过程中尽可能多的对一些关键词保留了英文原文&#xff0c;如果你想看最纯正的英文原版教材却又看不懂&#xff0c;可以试着来看一下橙…

早期RA的缓解率—比较新缓解标准和与现有标准

原文 译文 Prevalence of Remission in Early RA – A Comparison of New Remission Criteria to Established Criteria Bindee Kuriya 1, Ye Sun2, Gilles Boire3, Boulos Haraoui4, Carol A. Hitchon5, Janet E. Pope6, J. Carter Thorne7, Edward Keystone2, Diane S…