Java08-java语法基础(七)构造方法
Java08-java语法基础(七)构造方法
一、构造方法
1、什么是构造方法?
构造方法(类方法)是一个方法名和类名相容的特殊的成员方法。
2、构造方法的作用?
当使用new关键字创建一个对象时,为新建对象在堆内存开辟一个空间之后,Java系统将自动调用构造方法初始化该新建对象。
3、对象初始化过程
二、构造方法的定义与调用
1、定义:
class 类名{
[访问权限] 类名(参数表){
语句体;
//构造方法没有返回值
}
}
2、调用:
类名 对象名 = new 构造方法名(实参表);
3、栈内存、堆内存
Person p1 = new Person();
上述语句中有两个对象:引用对象和内存对象
具体的存储方式如下图:
注:new运算符开辟的存储区都在堆内存中
三、构造方法:初始化对象
1、方法名必须和类名相同;
2、定义类时,若没有定义构造方法,java会自动生成一个无参的构造方法;若定义了构造方法,将会把自动生成的够造方法覆盖掉。
3、构造方法没有返回值,而普通的成员方法必须要有返回值类型;
4、构造方法只能用new运算符调用,不能用对象名调用;
四、构造方法的重载
1、方法重载:方法名相同,参数列表不同,实现的效果也不同;
2、构造方法的重载:给构造方法传递不同的参数,就能实现不同形式的初始化;
3、构造方法与普通方法的区别:构造方法是类的一种特殊方法,其特殊性如下:
(1)可以重载;
(2)方法名与类名相同;
(3)不能有返回值,不使用return语句;
(4)不能由编程人员显式的直接调用(即不能通过“对象名.方法名();”的方式调用),只能通过new操作符调用;
(5)缺省的空构造方法:在java语言中,每个类都至少有一个构造方法,如果累的定义者没有显式的定义任何构造方法,系统将自动提供一个缺省的构造方法;如果定义了一个或多个构造方法,系统将不再缺省。
4、构造方法与普通成员方法的区别?
(1)构造方法名与类名相同,成员方法自定义;
(2)构造方法没有返回值,即没有方法类型;
(3)构造方法由系统调用,用来实例化对象;
转载于:https://www.cnblogs.com/luoyu113/p/9295304.html
Java08-java语法基础(七)构造方法相关推荐
- 给Java初学者福利——Java语法基础
Java代码基本格式 Java中所有程序代码都必须存在于一个类中,用class关键字定义类,在class之前可以有一些修饰符.格式如下: 修饰符 class 类名 { 程序代码 } 注: 1.Java ...
- 【JAVA SE】第二章 Java语法基础、数据类型、基本类型的字面值、基本类型的类型转换和运算规则
第二章 Java语法基础.数据类型.基本类型的字面值.基本类型的类型转换.运算规则和标识符命名风格 文章目录 第二章 Java语法基础.数据类型.基本类型的字面值.基本类型的类型转换.运算规则和标识符 ...
- Java语法基础-1
1. 关键字 1.1 关键字概述 被Java语言赋予特定含义的单词 1.2 关键字特点 组成关键字的字母全部小写 1.3 关键字注意事项 goto和const作为保留字存在,目前并不使用 类似Note ...
- 【第七次JAVA课,java语法基础】课件总结
没上课,不写总结! 空着,会专门写篇总结java的io和nio的随笔. 转载于:https://www.cnblogs.com/limitCM/p/9997971.html
- Java语法基础-2
1. 语句 1.1 流程控制语句 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我 ...
- JAVA语法基础之流程控制
在进行程序设计的时候,我们会经常进行逻辑判断,根据不同的结果做不同的事,或者重复做某件事,我们对类似这样的工作称为流程控制.在Java中,流程控制分为两大类:选择和循环.下面就依次来介绍这两类. 一. ...
- java语法基础(总结)
1,keyword:事实上就是某种语言赋予了特殊含义的单词. 保留字:事实上就是还没有赋予特殊含义,可是准备日后要使用过的单词. 2,标示符:事实上就是在程序中自己定义的名词.比方类名,变量名,函数名 ...
- java语法基础总结,顺利拿到offer
自我管理 谨言慎行 畅销书<影响力>提到,因为影响力的巨大差异,娱乐明星比科学家收入高几万倍.技术经理管理了N个人,影响力就是N倍,如果言行不端,造成的影响是基层人员的N倍.博主有过一个上 ...
- JAVA语法基础作业——动手动脑以及课后实验性问题(一)
一.枚举类型 public class EnumTest { public static void main(String[] args) { Size s=Size.SMALL; Si ...
- 【第四次JAVA课,java语法基础】课件总结
类与对象 java是严格的面向对象的语言,所以里面所有功能的实现都是以类和对象的形式来实现的,类是方法和数据的集合,对象是类的实现(即类描述的对象).在使用类的方法时,需要定义一个该类的对象来使用其方 ...
最新文章
- DRF工程搭建、环境安装与配置
- shell脚本编程第一天
- 如何访问自定义键值的二维数组
- 生成打印标贴_亚马逊如何打印FBA标签?亚马逊怎么打印FBA标签?
- java旺季机票_java-第四章-机票价格受到淡季旺季的影响,编写的小程序
- aspnetcore源码学习(一)
- 1012 The Best Rank (25)
- leetcode刷题日记-供暖器
- 知识付费系统源码基于PHP开源的网站内容付费源码|知识付费小程序源码
- JUCE入门级教程01——界面设计(细分12块)
- 5G核心网技术基础自学系列 | 5G无线网
- MOS管的导通电阻RDS(on)与阈值电压VGS(th)温度特性详解
- 【Python】python基础编程回顾(3)
- 2020年十大返利app排行榜
- Enable Geolocation in a WebView (Android)
- [网络安全]实操DVWS靶场复现CSRF漏洞
- NMOS管与PMOS管区别
- 光遇为什么显示服务器连接错误,光遇服务器错误怎么办 光遇服务器错误问题解决办法-游侠手游...
- 大哉,计算语言学之为用!(冯志伟)
- 设计模式可以戏说么?
热门文章
- Hough变换的基本思想
- csdn无人驾驶汽车_无人驾驶汽车100年历史
- 模型越复杂越容易惰性_ML模型的惰性预测
- 如果波音公司破产,对美国经济的影响有多大?
- 一觉醒来,借呗竟然被封了
- python 对象的异或运算符_python的运算符
- python判断几个数最大最小_python 找出list中最大或者最小几个数的索引方法
- java命令_JAVA与模式之命令模式
- python比较列表所有项是否有相同的部分_检查列表中的所有元素是否相同
- matlab 邻近度 离群点_MATLAB自制迷宫游戏,快来试试吧!