当前位置:网站首页>Day019 Method overriding and introduction of related classes
Day019 Method overriding and introduction of related classes
2022-08-05 04:21:00 【Strange year】
One, method rewriting
1. The concept of method overriding
(1) The subclass rewrites the method inherited from the parent class according to the requirements
(2) When rewriting, you can use the super. method to retain the method of the parent class
(3) The constructor cannot be overridden
2. Method rewrite rules
(1) The method name is the same
(2) The parameter list is the same
(3) The return value type is the same or its subclass
(4) The access authority cannot be stricter than the parent class
(5) The static method of the parent class cannot be overridden as a non-static method by the child class, and the non-static method of the parent class cannot be overridden as a static method by the child class
(6) A subclass can define a static method with the same name as the parent class, so as to hide the static method of the parent class in the subclass (Note: super cannot be used in static methods)
(7) The private method of the parent class cannot be overridden by the child class
(8) Cannot throw more exceptions than the parent class method
2. The difference between method overriding and method overloading

Second, Object class
Object class: is the parent class of all classes
Methods of the Object class that are often overridden by subclasses

1. equals() method of Object class
(1) Compare whether the two objects are the same object, if yes, return true
(2) operator
1 Simple data type, compare the value directly.Such as 1==2
②Reference type, compare whether the two are the same object
Note:
(1) The equals() method of the Object class is no different from ==
(2) When there are special requirements, such as when the same attributes are considered to be the same object, equals() needs to be rewritten
(3) Java.lang.String rewrites the equals() method, changing the judgment of the equals() method into judging its value
2. Exercise

package cn.bdqn.demo04;import java.util.Objects;public class Student {private String name;private int idCard;private int age;public Student() {}public Student(String name, int idCard, int age) {this.name = name;this.idCard = idCard;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getIdCard() {return idCard;}public void setIdCard(int idCard) {this.idCard = idCard;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;Student student = (Student) o;return idCard == student.idCard && age == student.age && Objects.equals(name, student.name);}}package cn.bdqn.demo04;import java.sql.SQLOutput;public class Test {public static void main(String[] args) {Student stu1=new Student("Zhang San",1234,22);Student stu2=new Student("xx",1234,22);System.out.println(stu1.equals(stu2));}}
边栏推荐
- Shell(4)条件控制语句
- 1007 Climb Stairs (贪心 | C思维)
- 从企业的视角来看,数据中台到底意味着什么?
- 不看后悔,appium自动化环境完美搭建
- 36-Jenkins-Job Migration
- 请写出SparkSQL语句
- There are a lot of 4T hard drives remaining, prompting "No space left on device" insufficient disk space
- 【树莓派】树莓派调光
- dedecms后台生成提示读取频道信息失败的解决方法
- How to solve complex distribution and ledger problems?
猜你喜欢

Four-digit display header design

Mysql的redo log详解
How to identify false evidence and evidence?

In the WebView page of the UI automation test App, the processing method when the search bar has no search button

C++ core programming

UE4 后期处理体积 (角色受到伤害场景颜色变淡案例)

MySql index learning and use; (I think it is detailed enough)

8.04 Day35-----MVC三层架构

Machine Learning Overview
![Spark Basics [Introduction, Getting Started with WordCount Cases]](/img/90/ebe887db0f8c36895691dea05f62cf.png)
Spark Basics [Introduction, Getting Started with WordCount Cases]
随机推荐
[8.2] Code Source - [Currency System] [Coins] [New Year's Questions (Data Enhanced Edition)] [Three Stages]
【树莓派】树莓派调光
[MRCTF2020] PYWebsite
Detailed explanation of Mysql's undo log
工业级远距离无线传输装置的功能有哪些?
[SWPU2019]Web1
虚证、实证如何鉴别?
1007 Climb Stairs (贪心 | C思维)
第一次性能测试实践,有“亿”点点紧张
请写出SparkSQL语句
36-Jenkins-Job迁移
日志导致线程Block的这些坑,你不得不防
概率论的学习和整理8: 几何分布和超几何分布
The solution to the failure to read channel information when dedecms generates a message in the background
write the story about us
【informix】解决启动报错大全,以及解决办法
iMedicalLIS监听程序(2)
C+ +核心编程
银行数据采集,数据补录与指标管理3大问题如何解决?
炎炎夏日教你利用小米智能家居配件+树莓派4接入Apple HomeKit