1.构造方法:

(1)定义:方法名称必须和类名相同,没有返回值,也没有void

(2)语法:

[访问修饰符] 类名(){
}

(3)作用:创建对象、初始化成员变量。

(4)构造方法的分类:

A、无参数的构造方法

分为:

a、隐式的无参数的构造方法:当一个类中没有任何形式的构造方法时,JVM会自动为当前类提供一个隐式的无参数的构造方法。

b、显示的无参数的构造方法

注意:当一个类已经提供了一个显示的构造方法,那么JVM都不会再提供隐式的构造方法。

B、有参数的构造方法:再使用有参数的构造方法时,需要进行参数的传递。

注意:

在一个类中,可以有多个参数列表不相同的构造方法。

2.方法重载

定义:在同一个类中,如果有多个方法名称相同,参数列表不同(个数,顺序,类型的不同)这就是方法的重载。

普通方法和构造方法都可以重载。

注意:方法返回值类型不同,不能算方法的重载,因为在调用该类型的方法时,语义不明确,编译器无法明确所调用的方法。

 3.this关键字

注意:当局部变量和成员变量名称一致时,以局部变量为主。

作用:this关键字表示对当前类对象的引用,也就是说可以把this当作当前类的一个对象来使用。

用法:

第一种:当方法中的参数名称和成员变量名称完全一致时,需要用this区分作用域。

第二种:当this(参数列表)的形式出现在构造方法的第一句代码时,表示该构造方法调用了当前类中其它的构造方法。

4.方法参数的传递

在Java中基本数据类型和引用数据类型都采用是值传递,也就是说传递的是一个具体的数据。

基本数据类型在进行参数传递时,传递的是值得副本。

引用类型在进行参数传递时,传递的是内存地址。

Java基础7一面向对象的更多相关文章

  1. Java基础教程:面向对象编程[2]

    Java基础教程:面向对象编程[2] 内容大纲 访问修饰符 四种访问修饰符 Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java 支持 4 种不同的访问权限. default ...

  2. Java基础教程:面向对象编程[1]

    Java基础教程:面向对象编程 内容大纲 Java语言概述 Java语言特点 1.Java为纯面向对象的语言,它能够直接反映现实生活中的对象.总之,Everything is object! 2.平台 ...

  3. Java基础教程:面向对象编程[3]

    Java基础教程:面向对象编程[3] 内容大纲 基础编程 获取用户输入 java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入.我们可以查看Ja ...

  4. Java基础语法(9)-面向对象之类的成员

    title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...

  5. Java基础语法(11)-面向对象之关键字

    title: Java基础语法(11)-面向对象之关键字 blog: CSDN data: Java学习路线及视频 1.this this是什么 它在方法内部使用,即这个方法所属对象的引用: clas ...

  6. JAVA基础知识之面向对象编程知识汇总

    JAVA基础课程部分面向对象已经学习完成,知识结构如下: 总体知识框架: 类的结构: 面向对象编程三大特征: 关键字和抽象类接口等: 常见知识汇总: 成员变量和局部变量比较 有无返回值方法比较: 权限 ...

  7. Java基础语法(10)-面向对象之三大特征

    title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...

  8. Java基础一:面向对象的特征

    经过16年校招,自己在Java基础方面也算有了一个质的飞跃,从原来知其然,到现在知其所以然,现将学习心得总结于此. 首先需要知道类和对象是什么? 维基百科定义类为: an extensible pro ...

  9. java基础学习05(面向对象基础01)

    面向对象基础01 1.理解面向对象的概念 2.掌握类与对象的概念3.掌握类的封装性4.掌握类构造方法的使用 实现的目标 1.类与对象的关系.定义.使用 2.对象的创建格式,可以创建多个对象3.对象的内 ...

  10. java基础学习总结——面向对象2

    一.JAVA类的定义

随机推荐

  1. js DOM 节点树 设置 style 样式属性

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. 【转载】intellij idea如何将web项目打成war包

    1.点击[File]->[Project Structure]菜单(或使用Shift+Ctrl+Alt+S快捷键),打开[Project Structure]窗口.如下图: 2.在[Projec ...

  3. 记录:通过SSH远程连接Ubuntu

    一.安装openssh服务器 $ sudo apt-get install openssh-server 二.启动ssh服务 安装完成后,启动服务: $ sudo /etc/init.d/ssh st ...

  4. PAT_A1138#Postorder Traversal

    Source: PAT A1138 Postorder Traversal (25 分) Description: Suppose that all the keys in a binary tree ...

  5. appium分层自动化的封装

    1.创建一个case包,start_app的python文件 #coding=utf-8from appium import webdriverfrom util.read_init import R ...

  6. Unity中使用摇杆控制

    Unity中使用摇杆控制 本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/50 ...

  7. js对对象的校验技巧,随时更新

    js中,字符串长度用length. 若不确定一个Map里,是否存在某个对象,则用underfind 去校验

  8. 运行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 ...

  9. oracle给表及列添加注释

    给表添加注释 comment on   table    MW_SYS.MWT_OM_OBJ1 is '业务类型的对象实例.'; 给表中的列添加注释 comment on column MW_SYS. ...

  10. HDU - 1243 - 反恐训练营

    先上题目: 反恐训练营 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...