一、方法的重载与重写

方法重载(overload)是让类以统一的方式处理不同类型数据的一种手段。调用方法时通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法,这就是多态性。

所谓方法重载是指在一个类中,多个方法的方法名相同,但是参数列表不同。参数列表不同指:参数的个数、参数类型或者参数的顺序不同。

在使用重载方法的时候需要注意以下几点:

1、在使用重载时只能通过不同的参数列表,必须具有不同的参数列表。

2、不能通过访问权限、返回类型、抛出的异常进行重载。

3、方法的异常类型和树木不会对重载造成影响。

4、可以有不同的返回类型,只要参数列表不同就可以了

5、可以有不同的访问修饰符

方法的重写(override)是子类在继承父类的方法时,方法不满足自身需求的时候,对方法进行的重写

重写的规则:

1、父类方法的参数列表必须完全与被子类重写的方法的参数列表相同,否则不能称为重写,而是重载。

2、父类的返回类型必须与被子类重写的方法返回类型相同,否则不能称其为重写而是重载。

3、Java中规定。被子类重写的方法不能拥有比父类方法更加严格的访问权限。

4、由于父类的访问权限修饰符的限制一定要大于被子类重写的方法的访问权限修饰符所以某一个父类的方法的访问修饰符为private就不能被子类重写、

5、如果在继承过程中父类当中的方法抛出异常,那么在子类中重写父类的该方法时,也要抛出异常。而且抛出的异常不能多于父类的异常。

方法重写与方法重载的区别

二、构造方法的特点和作用

构造方法的特点:

1:方法名称和类同名

2:不用定义返回值类型

3:不可以写retrun语句

4:构造方法可以被重载

作用:

给对象初始化

构造方法的细节:

当一个类中没有定义构造函数时,系统会默认添加一个无参的构造方法。当在类中自定义构造方法之后,默认的无参构造方法消失(如果需要无参构造方法需要手动添加)

1、构造函数的命名必须和类名完全相同;在java中普通函数可以和构造函数同名,但是必须带返回值。

2、构造函数的功能主要用于在类的对象创建定义时 初始化的状态。构造函数没有返回值,也不能用void来修饰,这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择。而其他方法都有返回值。即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让普通方法自动返回些东西,而这些就会不安全。

3、构造函数不能直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它时就会被调用。

4、当定义一个类的时候,通常情况下都会显示该类的构造函数,并且在函数中指定初始化的工作也可以省略,不过java编译器会提供一个默认的构造函数,此默认构造函数是不带参数的,而一般方法不存在这一特点。

关于java_关于Java基础相关推荐

  1. 市面上不成熟的系统Java_回顾java基础知识

    1.标识符和关键字 java语言规定标识符必须以字母.下划线(_).美元符号($)开关. 首字母必须是字母.下划线.或$,不能是数字,后面可接任意字符,不能包含@.#等其他特殊字符. 2.java关键 ...

  2. cascade在java_【Java基础】集合

    一.Collection接口(超级接口:Iterator) 其下有两个子接口,Set和List. 1)Set接口的两个常用子类 TreeSet:有序存放 HashSet:散列存放 2)List接口(允 ...

  3. 字节字符区别Java_【JAVA基础】字符数组与字节数组的区别

    String.getBytes()和String.tocharArray(),字节数组和字符数组的区别 String.getBytes()是将字符串转化为一个字节数组.而String.toCharAr ...

  4. 图片上传压缩java_【java基础】压缩图片上传

    1.pom.xml net.coobird thumbnailator 0.4.8 2.代码 /** * 上传图片 */ @RequestMapping(method = RequestMethod. ...

  5. stringbuilder寻找字符串位置可能存在多个 java_【面试题系列】——Java基础

    本文主要包括Java基础及面向对象相关面试题. 1,Java科普1.1 为什么安装包要分JDK和JRE?1.2 为什么Java语言是跨平台的?1.3 为什么安装完JDK后要设置环境变量?1.4 Jav ...

  6. 靠java_基础不牢靠,何以争朝夕?Java基础面试82道详细解析!(一)

    基础不牢靠,何以争朝夕?Java基础面试82道详细解析!(一) 发布时间:2020-03-31 12:08:31 来源:51CTO 阅读:229 作者:wx5d9ed7c8443c3 题目的基本顺序是 ...

  7. Java基础入门语法和安装

    1. Java概述 1.1 Java语言背景介绍(了解) 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford Un ...

  8. Java笔记整理-02.Java基础语法

    1,标识符 由英文字母.数字._(下划线)和$组成,长度不限.其中英文字母包含大写字母(A-Z)和小写字母(a-z),数字包含0到9. 标识符的第一个字符不能是数字(即标识符不能以数字开头). 标识符 ...

  9. java基础(十三)-----详解内部类——Java高级开发必须懂的

    java基础(十三)-----详解内部类--Java高级开发必须懂的 目录 为什么要使用内部类 内部类基础 静态内部类 成员内部类 成员内部类的对象创建 继承成员内部类 局部内部类 推荐博客 匿名内部 ...

最新文章

  1. LeetCode刷题-4
  2. 基于c语言开发老人防摔系统,家有老人,做好防摔排查
  3. 设计模式-简单工厂模式
  4. 系统集成项目管理工程师考试准备
  5. 定制zabbix的rpm包---spec文件的书写
  6. html怎么设置图片倾斜度,CSS3-css如何使图片倾斜45度显示
  7. android 骨架屏刷新动画,ios - 原生骨架屏,网络加载过渡动画的封装
  8. 活动报名 | PaddlePaddle Hackathon飞桨黑客马拉松邀你参加
  9. 开辟经济发展的第二战场
  10. python钉钉机器人发送消息_python调用钉钉机器人发送消息
  11. Spring的@Transactional事务注意事项
  12. jQuery 使用收集
  13. SharePoint 2010 中型场(Farm)——性能研究(来自DeLL技术中心博客)
  14. ZZULIOJ:1044: 不及格率
  15. nginx 报错: nginx: [emerg] open() /etc/nginx/nginx.conf failed (2: No such file or directory)
  16. 【融创同智 竞促发展】2019AIIA杯人工智能巡回赛及专项赛工作通气会在京成功召开
  17. Unity 鱼的游动
  18. 解决伪原创视频 改变视频md5原创
  19. Eclipse一直提示 Loading descriptor for xxx 的问题
  20. UIC564-2 附录10 – 橡胶法兰产品的阻燃防火测试

热门文章

  1. 前方危险-让很多“高逼格”高管深刻反思的文章
  2. 访问控制模型ACL和RBAC
  3. mySQL教程 第7章 存储过程和函数
  4. WPF:从WPF Diagram Designer Part 1学习控件模板、移动、改变大小和旋转
  5. JSON为什么那样红(另有洞天)
  6. 青海师大c语言研究生专业课,2016年青海师范大学计算机应用技术C语言程序设计考研复试题库...
  7. c51为啥要宏定义时钟_51单片机时钟实训报告
  8. linux make命令实现,Linux make命令主要参数详解
  9. java时间日期工具类_java工具类--日期相关;
  10. win主机上搭建php网站运行环境,Windows server 2008搭建php运行环境图文详解(php5.3)