【JAVA杂货铺】一文带你走进面向对象编程的构造方法 | Java| 面向对象编程 | (中)

🌈个人主页: Aileen_0v0
🔥系列专栏:Java学习系列专栏
💫个人格言:"没有罗马,那就自己创造罗马~"


 


目录

回顾

 构造方法

 this关键字

面试题

构造方法的类型 

下节预告

代码块 


🍒回顾

之前我们学习了什么是类  什么是对象  什么是面向对象编程

定义类

 


🍒 构造方法

构造方法:它的方法名和类名相同,且无返回值

package lecture1;class Person{private String name;private int age;//构造方法 - 总是和类名相同,且无返回值//当没有构造方法的时候,编译器会自动提供一个,不带参数的构造方法//构造方法作用:实例化一个对象public Person() {System.out.println("Person<init>");}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}//@Overridepublic String toString() {return "Person{" +"name='" + name + '\'' +",age="  + age +"}";}
}public class TestDemo {public static void main(String[] args) {Person person = new Person();}
}
package lecture1;class Person{private String name;private int age;//构造方法 - 总是和类名相同,且无返回值//当没有构造方法的时候,编译器会自动提供一个,不带参数的构造方法//构造方法作用:实例化一个对象//构造方法1:public Person() {System.out.println("Person<init>");}//构造方法2:public Person(String name, int age) {this.name = name;this.age = age;System.out.println("Person<String,int>");}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}//@Overridepublic String toString() {return "Person{" +"name='" + name + '\'' +",age="  + age +"}";}
}
public class TestDemo {public static void main(String[] args) {Person person1 = new Person();System.out.println(person1);Person person2= new Person("bit" ,19);System.out.println(person2);}}

运行结果: 


 🍒this关键字

🍎面试题

this关键字代表对象,这句话是否正确?为什么?

不正确,因为this表示的是对象的引用

this:

this() : 调用自己的构造方法 ---> 只能在构造方法里面写

this.data:调用当前对象的属性

this.fun():调用当前对象的方法


🍒构造方法的类型 

 

中间调用构造方法3报错信息告诉我们:在一个构造方法里面只能调用一次其他构造方法,否则会报错. 

构造方法1:无参数

构造方法2:两个参数

构造方法3:一个参数


🍋下节预告

🍊代码块 

📝总结 

本节主要讲Java面向对象编程的构造方法的应用以及this关键字的使用.喜欢的小伙伴多多三连吧,Java学习系列专栏,订阅专栏,可以获得更新提醒❤️这里是Aileen.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/265570.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

观海微电子----LVDS接口

LVDS&#xff08;Low Voltage Differential Signaling&#xff0c;即低电压差分信号&#xff09; 常见于高清分辨率的屏幕&#xff0c;是TTL接口的升级版&#xff0c;LVDS接口是在TTL的技术上编码而成&#xff0c;使用低压差分信号来进行传输。 这种技术的核心是采用极…

Java面试遇到的一些常见题

目录 1. Java语言有几种基本类型&#xff0c;分别是什么&#xff1f; 整数类型&#xff08;Integer Types&#xff09;&#xff1a; 浮点类型&#xff08;Floating-Point Types&#xff09;&#xff1a; 字符类型&#xff08;Character Type&#xff09;&#xff1a; 布尔类…

java学习part42反射

187-反射机制-反射的理解与使用举例_哔哩哔哩_bilibili

大数据技术1:大数据发展简史

前言&#xff1a;学习大数据技术&#xff0c;知道会用已经够了&#xff0c;但是要想走得更远&#xff0c;应该了解它发展的来龙去脉&#xff0c;为何会有新的技术/工具的出现&#xff0c;相比老的技术有什么样的进步。 1、传统数据处理系统存在的问题 随着信息时代互联网技术爆…

LeetCode 每日一题 Day 9 ||简单dp

70. 爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 示例 1&#xff1a; 输入&#xff1a;n 2 输出&#xff1a;2 解释&#xff1a;有两种方法可以爬到楼顶。 1 阶 1 阶2 阶 示例 2&am…

Nacos源码解读08——基于JRaft实现AP模式

什么是JRaft算法 详情参考 https://www.cnblogs.com/luozhiyun/p/13150808.html http://www.zhenchao.io/2020/06/01/sofa/sofa-jraft-node-startup/ Nacos对JRaft算法的应用 当Nacos使用嵌入数据源&#xff08; -DembeddedStoragetrue&#xff0c;每个节点有一个数据源&…

【FPGA】Quartus18.1打包封装网表文件(.qxp)详细教程

当我们在做项目的过程中&#xff0c;编写的底层Verilog代码不想交给甲方时怎么办呢&#xff1f;此时可以将源代码打包封装成网表文件&#xff08;.qxp&#xff09;进行加密&#xff0c;并且在工程中进行调用。 Quartus II的.qxp文件为QuartusII Exported Partition&#xff0c;…

ardupilot开发 --- git 篇

一些概念 工作区&#xff1a;就是你在电脑里能看到的目录&#xff1b;暂存区&#xff1a;stage区 或 index区。存放在 &#xff1a;工作区 / .git / index 文件中&#xff1b;版本库&#xff1a;本地仓库&#xff0c;存放在 &#xff1a;工作区 / .git 中 关于 HEAD 是所有本地…

深入理解ARP协议:网络通信中的地址解析协议

目录 引言 什么是ARP协议&#xff1f; ARP协议的工作原理 1. ARP请求 2. ARP应答 3. ARP缓存 ARP协议的作用 结语 引言 在计算机网络中&#xff0c;地址解析协议&#xff08;ARP&#xff0c;Address Resolution Protocol&#xff09;扮演着重要的角色。ARP协议负责将网…

盘点面试大热门之区间问题

关卡名 理解与贪心有关的高频问题 我会了✔️ 内容 1.理解区间问题如何解决 ✔️ 2.理解字符串分割问题 ✔️ 3.理解加油站问题如何解决 ✔️ 1. 区间问题 区间问题也是面试中经常遇到的情况&#xff0c;这类面试题目还挺讨巧的&#xff0c;很容易考察出应聘者到底会不会…

鸿蒙应用开发(二)环境搭建

开发流程 IDE下载 首先下载HUAWEI DevEco Studio&#xff0c;介绍首次启动DevEco Studio的配置向导&#xff1a; 运行已安装的DevEco Studio&#xff0c;首次使用&#xff0c;请选择Do not import settings&#xff0c;单击OK。安装Node.js与ohpm。node.js 是基于 V8 引擎构…

基于lambda简化设计模式

前言 虽说使用设计模式可以让复杂的业务代码变得清晰且易于维护&#xff0c;但是某些情况下&#xff0c;开发可能会遇到我为了简单的业务逻辑去适配设计模式的情况&#xff0c;本文笔者就以四种常见的设计模式为例&#xff0c;演示如何基于lambda来简化设计模式的实现。 策略…