java方法的覆盖与重载_java方法的重载与覆盖

本文详细介绍了Java中方法重载与覆盖的概念及其使用条件。方法重载是指在同一类中,方法名相同但参数列表不同的两个或多个方法;而方法覆盖则是指子类重新实现父类中的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java方法的重载与覆盖

java多态的2种表现形式 方法重载和方法覆盖

方法重载:同一个类中,方法名相同,参数列表不同的2个或多个方法构成方法的重载。

方法覆盖:子类重新实现了父类中的方法。

方法重载

/**

* 方法重载满足的条件

* 同一个类中,方法名相同,参数列表不同的2个或多个方法构成方法的重载

* 参数列表不同指参数的类型,参数的个数,参数的顺序至少一项不同

* 方法的返回值类型,方法的修饰符可以不同。

*/

public class Overload{

public static void overLoad(int i){

System.out.println(i);

}

/* 下面方法都与第一个方法public static void overLoad(int i)相比较*/

//public int overLoad(int k){}//错误,参数列表相同

//返回值类型不相同

public int overLoad(int i,int k){

return 0;

}

//修饰符不同

private void overLoad(double d){

}

//修饰符,返回值类型都不同

private double overLoad(double d,int k){

return 0;

}

}

方法覆盖

/**

* 方法覆盖指子类重新实现了父类中的方法

* 方法覆盖约束条件:

* 1.子类的方法名称,参数列表,返回值类型必须与父类中方法的名称,参数列表,返回值类型一致

* 2.子类方法不能缩小父类方法的访问权限,但可以扩大

* 3.子类方法不能抛出比父类方法更多的异常,可以不抛出异常

*/

public class Override{

}

class Exception1 extends Exception{}

class Exception2 extends Exception1{}

class Exception3 extends Exception2{}

class Parent{

void method() throws Exception2{}

}

class Son extends Parent{

//private void method(){}//错误,缩小了父类方法的访问权限

//int method(){} //错误,方法返回值与父类方法不一致

void method(int k){} //通过编译,但不与父类的方法method()构成覆盖

//public void method() throws Exception1{}//错误 抛出比父类更多的异常

//public void method(){} //正确 扩大父类方法的访问权限,不抛出异常

//void method() throws Exception3{}; //正确 抛出的异常比父类抛出的异常小

public void method() throws Exception3{}

}

相关文档:

package com.hefeng.test;

import java.text.DateFormat;

import java.text.ParsePosition;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util ......

本人网上收集的两个java

录音程序,文章出处不记得了.

程序1:

import javax.sound.sampled.*;

import javax.swing.JFrame;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.awt.Toolkit;

import javax.swing.JPanel;

import java.awt.event.ActionListener;

......

基于Java的一些权限框架简介

JOSSO

JOSSO(Java   Open   Single   Sign-On)是一个开源的J2EE-based的SSO(SSO:单一登录技术是一种认证和授权机制,它允许注册用户只需要在任一成员网站上登录一次,而后授权访问其他连接的分支网站,无需再进行验证登录)基础结构.它的目的是提供一种用来解决在统� ......

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.InputStream;

public class TestIO {

public static void main(String[] args) {

String fileName="E://test.txt";

testInputStream(fileName);

}

public static void testInputStre ......

1. 如果已经知道某个地点的时区,年,月,日,时,分,秒,希望得到转换后的本系统时间,可以采用如下的方法:

方法:假设时区是GMT+08:00,,年是2009年,月是11月,日是7日,时是10时,分是50分,秒是30。

public class Time {

public static void main(String[] args) {

TimeZone tz = Tim ......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值