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类的定义
随机推荐
- C# 获得剪贴板内容和 richTextBox部分文本设置颜色
try { MemoryStream vMemoryStream = iData.GetData("Html Format") as MemoryStream; if (vMemo ...
- js 请求单个文件 并验证扩展名
function suffix(file_name) { var three=file_name.split("."); ]; return last; } $('#btnSear ...
- js 响应事件
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- vue中eventbus 多次触发的问题
相比于react,vue是一个更上手很快的框架.所说简单易用,但在做Vue项目的过程中,就会发现,坑还是有的.组件之间传递数据是一个常见的需求,父子组件传递数据在官网有介绍,除了父子组件,一般地,任意 ...
- 用Python来实现斐波那契数列.
1).递归 def fib_recur(n): assert n >= 0, "n > 0" if n <= 1: return n return fib_rec ...
- 【笔记】Linux就该这么学-第六课第四章
vim使用 a 在光标后一位置插入 i 在光标当前位置插入 o 在光标下面创建个空行 dd 删除(剪切)光标所在行 5dd 删除(剪切)从光标处开始的5行 yy 复 ...
- H3C交换机配置学习随笔
1.交换机配置VLAN vlan 创建VLAN: <h3c>system-view [h3c]vlan 10 删除ID为10的vlan:undo vlan 10 注:任何型号的交换机,都支 ...
- 【转载】java中的反射
主要介绍以下几方面内容 理解 Class 类 理解 Java 的类加载机制 学会使用 ClassLoader 进行类加载 理解反射的机制 掌握 Constructor.Method.Field 类的用 ...
- es6-Symbol用法
1.symbol概念 这种数据类型提供独一无二值 比如,在JS中,我可以通过数据类型生成变量a=number05,也可以生成b=nubmer05,这两个变量可以说是相等的. 但是用symbol生成的值 ...
- PAT_A1142#Maximal Clique
Source: PAT A1142 Maximal Clique (25 分) Description: A clique is a subset of vertices of an undirect ...