java--方法重写与重载
2023-09-11 14:17:27 时间
方法重写
/*方法重写(一般多用在继承上) 定义:它是指子类和父类的关系,子类重写了父类的方法。 两个方法返回值、方法名、参数列表必须完全一致! 出现原因:在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。*/ class Person{ private int age; private String name; public int getAge() {return age;} public void setAge(int age) {this.age = age;} public String getName() {return name;} public void setName(String name) {this.name = name;} public String getInfo(){return "名字是:"+getName()+",年龄是: "+getAge();} } class Student extends Person{ private String school; public void setSchool(String school){ this.school = school;} public String getSchool(){ return school;} public String getInfo(){return "名字是:"+getName()+",年龄是: "+getAge()+",学校是:"+school;}//这里重写了父类的方法 } public class Overiding { public static void main (String args[]){ Student student = new Student(); Person person = new Person(); person.setAge(40); person.setName("张三"); student.setAge(23); student.setName("李四"); student.setSchool("育英中学"); System.out.println(person.getInfo()); System.out.println(student.getInfo()); } }
方法重载
/*方法重载 定义:在同一个类中相同的方法名,参数不同而已(参数类型不一样或参数数量不一样) 出现原因: 在编程过程中,是要遵守编程规范的,这就要求方法的命名是要有意义的,而有的方法可能面临着,会有不用的参数列表, 这时会用到重载,这样,既可以表示方法的意义,又表示这些方法是相关方法,方便调用。 所以,方法重载,很大程度是为了程序的可读性,即使不用,也是不会妨碍程序运行的。*/ class Car{ public void Myf(int a) {System.out.println("我是方法1");} public void Myf(String a) {System.out.println("我是方法2");} public void Myf(String a,String b) {System.out.println("我是方法3");} } public class Overloading { public static void main (String args[]){ Car car1=new Car(); car1.Myf(2);//根据方法里的参数,掉用第一个方法 car1.Myf("中");//根据方法里的参数,掉用第二个方法 car1.Myf("中","国");//根据方法里的参数,掉用第三个方法 } }
相关文章
- java中的堆、栈和方法区
- java高级用法之:在JNA中将本地方法映射到JAVA代码中
- Java经典练习题_Day03
- Java IO流框架图
- Predicate和Consumer接口– Java 8中java.util.function包下的接口
- maven编译报错:java.lang.ExceptionInInitializerError: com.sun.tools.javac.code.TypeTags
- java之方法的重写
- java 方法作为参数封装在map
- Java中toArray的用法探究(java数组与list转换)
- 基于Java+MySQL实现(WinForm)学生成绩管理系统【100010404】
- Java通过join方法来暂停当前线程
- java获取当前路径的几种方法
- 停止Java线程,小心interrupt()方法
- java获取时间戳的方法
- What is Java virtual machine?
- Java学习-050-AES256 之 java.security.InvalidKeyException: Illegal key size or default parameters 解决方法
- 【JavaNIO的深入研究4】内存映射文件I/O,大文件读写操作,Java nio之MappedByteBuffer,高效文件/内存映射
- wrong number of arguments,java方法反射时数组参数的坑
- Java_jdbc 基础笔记之八 数据库连接(写一个查询Student对象的方法)
- java学习笔记(6)方法、内存、重载
- 华为OD机试 -判断字符串子序列(Java) | 机试题+算法思路+考点+代码解析 【2023】
- Java中删除数组中重复元素
- JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
- 【Java】:最简单方法保留数字的第N位小数
- java中,一个类实现某个接口,必须重写接口中的所有方法吗?