java面向对象编程---方法
二、方法
1、方法的重载
1.1 方法的签名
- 方法的唯一标识就是方法的签名:方法的名字和参数列表;
- 一个类中不能出现两个方法的签名完全一样的方法
1.2 方法的重载
- 方法名相同但参数列表不同称之为方法的重载。
public void show(){}
//互相构成重载
public void show(int i) {}
1.3 访问重载方法
- 编译器在编译时会根据方法的起那么绑定调用不同的方法
2、构造方法
2.1 构造方法的语法结构
- 构造方法是类的成员之一----------特殊的方法,有如下两个规则:
- 方法名和类名相同;
- 没有返回值类型,且不写void
public class Person{
public Person(){
//构造方法
}
}
2.2 通过构造方法初始化成员变量
- 构造方法的意义:初始化成员变量
- 当实例化一个对象时:new Person():实际上是执行了对应的构造方法
public class Person() {
Public Person() {
System.out.println("执行了无参构造方法");
}
}
public class Test{
public void static main(String[] args){
Person p = new Person();//执行了无参构造方法
}
}
2.3 this关键字
- this关键字解决了构造方法参数名称的属性名称同名的问题;
public Person(String name,int age) {
this.age = age;
this.name = name;//this解决同名问题。增加代码可读性
}
- this关键字是谁?谁调用了this.属性或方法中的某个属性和方法,则this就调用谁
public Person(String name) {
System.out.println("Person的无参构造方法");
this.name = name;//this.指Person对象。
}
2.4 默认的构造方法
- 一个类必须有构造方法,当类中没有定义时,编译器会提供一个默认的无参构造方法;
- 当我们显式的定义了任意一个构造方法时,系统将不会提供默认的无参构造方法。
public class Person {
String name;
int age;
public Person(String name) {//类名相同 且无返回值类型--- 构造方法
System.out.println("Person的无参构造方法");
this.name = name;//区分同名的
}
public void show () {
System.out.println("show1");
}
public void show (int i) {
System.out.println("show2");
}
public void show (double d) {
System.out.println("show3");
}
public void show (int i ,double d) {
System.out.println("show4");
}
public void Show (int i ,double d) {
System.out.println("show5");
}
}
public class TestMethod {
public static void main(String[] args) {
Person p = new Person();//会报错,系统不会提供默认的构造方法
}
}
2.5 构造方法的重载
- 类名相同,但参数列表不同的构造方法,我们称之为互相构成重载。
public Person(String name,int age) {
this.name = name;
this.age = age;
}
public Person(String name) {//类名相同 且无返回值类型--- 构造方法
System.out.println("Person的无参构造方法");
this.name = name;//区分同名的
}
java面向对象编程---方法的更多相关文章
- Java面向对象编程基础
一.Java面向对象编程基础 1.什么是对象?Object 什么都是对象! 只要是客观存在的具体事物,都是对象(汽车.小强.事件.任务.按钮.字体) 2.为什么需要面向对象? 面向对象能够像分析现实生 ...
- java 面向对象编程。。。。
经过一周的学习(java),总结了许多,对java的理解,java的类型,运用,安装,基础语法,变量,常量,表达式,语句 java从C语言中继承了大量语言特性.java面向对象编程的基本特征,包括继承 ...
- 《Java面向对象编程》
<Java面向对象编程> 第11章 对象的生命周期 11.1 创建对象的方式 用new语句创建对象 运用反射手段,调用java.lang.Class 或者 java.lang.Const ...
- JAVA面向对象编程课程设计——网络版单机斗地主
一.团队介绍 成员姓名 任务分配 成员课程设计博客链接 兰泽祥(组长) 数据库,斗地主规则的实现,人机自动出牌的算法,实体类的设计 JAVA面向对象编程课程设计--web版斗地主 吴修恩 JSP界面的 ...
- JAVA面向对象编程课程设计——web版斗地主
一.团队课程设计博客链接 JAVA面向对象编程课程设计--网络版单机斗地主 二.个人负责模块或任务说明 实体类的设计 斗地主规则的实现 人机自动出牌的算法 实现数据库的DAO模式 三.自己的代码提交记 ...
- java面向对象编程知识点总结
一:今天完成 上午详细了解了java面向对象编程的一些细节,记录如下. 1)类 是一种引用类型,包含一个签名和一个主体,主体是放在花括号里面的成员,成员包括字段和方法,还有构造方法.初始化程序和嵌套类 ...
- Java面向对象编程(一)
由于常常将Java和C++面向对象编程的原则搞乱,所以这次把相关要点分别总结一下,本文主要总结Java面向对象编程. 面向对象编程的三大特性是:继承性(inheritance), 多态性(polymo ...
- JAVA学习(五):Java面向对象编程基础
Java面向对象编程基础 面向对象(Object oriented programming,OOP)技术是一种强有力的软件开发方法,它採用数据抽象与信息隐藏技术,来使软件开发简单化,以达到代码重用的目 ...
- (一)如何理解java面向对象编程
哲学中,事物总是螺旋式上升,波浪式前进.因而编程也逐渐向人类更容易理解的方向前进,多年来人们苦苦追求的编程境界 : 高扩展性(extensibility),高复用性(reuseable).java语言 ...
随机推荐
- 2003031121-浦娟-python数据分析第三周作业-第一次作业
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/pexy/20sj 作业链接 https://edu.cnblogs.com/campus/pexy/20s ...
- 弃用!Github 上用了 Git.io 缩址服务的都注意了
GitHub 是面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub.对程序员来说,GitHub 可以说是开源精神之所系.在 GitHub 任何职业程 ...
- 【Rust】使用HashMap解决官方文档中的闭包限制
问题概述 值缓存是一种更加广泛的实用行为,我们可能希望在代码中的其他闭包中也使用他们.然而,目前 Cacher 的实现存在两个小问题,这使得在不同上下文中复用变得很困难. 第一个问题是 Cacher ...
- 标注工具doccano导出数据为空的解决办法
地址:https://github.com/taishan1994/doccano_export doccano_export 使用doccano标注工具同时导出实体和关系数据为空的解决办法.docc ...
- vue生命周期加载顺序
1.beforeCreate(创建前)表示实例完全被创建出来之前,vue 实例的挂载元素$el和数据对象 data 都为 undefined,还未初始化.此钩子函数不能获取到数据,dom元素也没有渲染 ...
- Django序列化组件与数据批量操作与简单使用Forms组件
目录 SweetAlert前端插件 Django自带的序列化组件 批量数据操作 分页器与推导流程 Forms组件之创建 Forms组件之数据校验 Forms组件之渲染标签 Forms组件之信息展示 S ...
- CoaXPress 线缆和接插件的设计要求
本文的原理部分内容不仅适用于CoaXPress 协议,也同样适用于其它高速信号传输情形.在高速.低干扰信号传输时,线缆和接插件的选取是非常讲究的,我们在实际应用中经常会遇到线缆原因.阻抗匹配原因导致的 ...
- 「JOISC 2019 Day4」蛋糕拼接 3
loj 3039 NKOJ Description \(n\)个蛋糕,每个蛋糕有\(w_i,h_i\).选\(m\)个蛋糕满足\(\sum\limits_{j=1}^mw_{k_j}-\sum\lim ...
- Dubbo本地存根是什么,Dubbo本地伪装又是什么?
真正的大师永远怀着一颗学徒的心 哈喽!大家好,我是小奇,一位程序员界的学徒 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 前言 书接上回,昨天打了 ...
- CabloyJS 4.12震撼发布,及新版教程尝鲜
引言 凡是可以用 JavaScript 来写的应用,最终都会用 JavaScript 来写 | Atwood 定律 目前市面上出现的大多数与 NodeJS 相关的框架,基本都将 NodeJS 定位在工 ...