Java基础7一面向对象
1.构造方法:
(1)定义:方法名称必须和类名相同,没有返回值,也没有void
(2)语法:
[访问修饰符] 类名(){
}
(3)作用:创建对象、初始化成员变量。
(4)构造方法的分类:
A、无参数的构造方法
分为:
a、隐式的无参数的构造方法:当一个类中没有任何形式的构造方法时,JVM会自动为当前类提供一个隐式的无参数的构造方法。
b、显示的无参数的构造方法
注意:当一个类已经提供了一个显示的构造方法,那么JVM都不会再提供隐式的构造方法。
B、有参数的构造方法:再使用有参数的构造方法时,需要进行参数的传递。
注意:
在一个类中,可以有多个参数列表不相同的构造方法。
2.方法重载
定义:在同一个类中,如果有多个方法名称相同,参数列表不同(个数,顺序,类型的不同)这就是方法的重载。
普通方法和构造方法都可以重载。
注意:方法返回值类型不同,不能算方法的重载,因为在调用该类型的方法时,语义不明确,编译器无法明确所调用的方法。
3.this关键字
注意:当局部变量和成员变量名称一致时,以局部变量为主。
作用:this关键字表示对当前类对象的引用,也就是说可以把this当作当前类的一个对象来使用。
用法:
第一种:当方法中的参数名称和成员变量名称完全一致时,需要用this区分作用域。
第二种:当this(参数列表)的形式出现在构造方法的第一句代码时,表示该构造方法调用了当前类中其它的构造方法。
4.方法参数的传递
在Java中基本数据类型和引用数据类型都采用是值传递,也就是说传递的是一个具体的数据。
基本数据类型在进行参数传递时,传递的是值得副本。
引用类型在进行参数传递时,传递的是内存地址。
Java基础7一面向对象的更多相关文章
- Java基础教程:面向对象编程[2]
Java基础教程:面向对象编程[2] 内容大纲 访问修饰符 四种访问修饰符 Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java 支持 4 种不同的访问权限. default ...
- Java基础教程:面向对象编程[1]
Java基础教程:面向对象编程 内容大纲 Java语言概述 Java语言特点 1.Java为纯面向对象的语言,它能够直接反映现实生活中的对象.总之,Everything is object! 2.平台 ...
- Java基础教程:面向对象编程[3]
Java基础教程:面向对象编程[3] 内容大纲 基础编程 获取用户输入 java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入.我们可以查看Ja ...
- Java基础语法(9)-面向对象之类的成员
title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...
- Java基础语法(11)-面向对象之关键字
title: Java基础语法(11)-面向对象之关键字 blog: CSDN data: Java学习路线及视频 1.this this是什么 它在方法内部使用,即这个方法所属对象的引用: clas ...
- JAVA基础知识之面向对象编程知识汇总
JAVA基础课程部分面向对象已经学习完成,知识结构如下: 总体知识框架: 类的结构: 面向对象编程三大特征: 关键字和抽象类接口等: 常见知识汇总: 成员变量和局部变量比较 有无返回值方法比较: 权限 ...
- Java基础语法(10)-面向对象之三大特征
title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...
- Java基础一:面向对象的特征
经过16年校招,自己在Java基础方面也算有了一个质的飞跃,从原来知其然,到现在知其所以然,现将学习心得总结于此. 首先需要知道类和对象是什么? 维基百科定义类为: an extensible pro ...
- java基础学习05(面向对象基础01)
面向对象基础01 1.理解面向对象的概念 2.掌握类与对象的概念3.掌握类的封装性4.掌握类构造方法的使用 实现的目标 1.类与对象的关系.定义.使用 2.对象的创建格式,可以创建多个对象3.对象的内 ...
- java基础学习总结——面向对象2
一.JAVA类的定义
随机推荐
- js通过插件发送邮件
这个插件为SmtpJS 官网地址为 https://www.smtpjs.com/ 方法很简单 <script src="https://smtpjs.com/v2/smtp.js& ...
- mysql中int、bigint、smallint 和 tinyint的区别与长度
各种整形,总结留作参考. bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 ...
- json简介及josn数组中取字符
1.json字符串就是字符串,只不过格式是Json格式的,以键值对的形式存在,键和值可以是字符串,数字,空值,数组等. json对象在花括号中书写,一个json对象包含多个键值对,json对象以花括号 ...
- Unity与Android通信的中间件
2.1.1 Fragment和Activity都需要实现的接口——IBaseView/** * Description:Basic interface of all {@link Activity} ...
- localStorage、sessionStorage、cookie
vue下的全局变量和vuex里的state都是临时变量,页面刷新就都没了.
- window.open方法被浏览器拦截的处理方式
问题现象 当我们在一个 ajax 回调中执行 window.open 方法时,新页面会被浏览器拦截. 原因 在 Chrome 的安全机制里,非用户直接触发的 window.open 方法,是会被拦截的 ...
- 配置Jupyter
前几天见同学有用Jupyter notebook的,有点喜欢,于是今天自己配了一下. Jupyter是一个非常好用编辑器,因为Jupyter notebook 不仅可以编写代码运行,并且可以直接在代码 ...
- 继承(day09)
二十一 继承(Inheritance) ... 子类的构造函数和析构函数 5.1 子类的构造函数 )如果子类构造函数没有显式指明基类子对象的初始化方式,那么该子对象将以无参方式被初始化. )如果希望基 ...
- HDU1029 - Ignatius and the Princess IV【水题】
给你n个数字,请你找出出现至少(n+1)/2次的数字. 输入 本题包含多组数据,请处理到EOF: 每组数据包含两行. 第一行一个数字N(1<=N<=999999) ,保证N为奇数. 第二行 ...
- 企业版 Linux 附加软件包(EPEL)
企业版 Linux 附加软件包(以下简称 EPEL)是一个由特别兴趣小组创建.维护并管理的,针对 红帽企业版 Linux(RHEL)及其衍生发行版(比如 CentOS.Scientific Linux ...