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 DOM 节点树 设置 style 样式属性
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- 【转载】intellij idea如何将web项目打成war包
1.点击[File]->[Project Structure]菜单(或使用Shift+Ctrl+Alt+S快捷键),打开[Project Structure]窗口.如下图: 2.在[Projec ...
- 记录:通过SSH远程连接Ubuntu
一.安装openssh服务器 $ sudo apt-get install openssh-server 二.启动ssh服务 安装完成后,启动服务: $ sudo /etc/init.d/ssh st ...
- PAT_A1138#Postorder Traversal
Source: PAT A1138 Postorder Traversal (25 分) Description: Suppose that all the keys in a binary tree ...
- appium分层自动化的封装
1.创建一个case包,start_app的python文件 #coding=utf-8from appium import webdriverfrom util.read_init import R ...
- Unity中使用摇杆控制
Unity中使用摇杆控制 本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/50 ...
- js对对象的校验技巧,随时更新
js中,字符串长度用length. 若不确定一个Map里,是否存在某个对象,则用underfind 去校验
- 运行npm run watch时报:events.js:182 throw er; // Unhandled 'error' event
I had this issue i did the following steps and i have no issues anymore: Delete node_modules directo ...
- oracle给表及列添加注释
给表添加注释 comment on table MW_SYS.MWT_OM_OBJ1 is '业务类型的对象实例.'; 给表中的列添加注释 comment on column MW_SYS. ...
- HDU - 1243 - 反恐训练营
先上题目: 反恐训练营 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...