在第一条军规中说过,重写方法必需添加@Override 注解,如果在不遵守第一条军规的前提下你是可以及时发下静态方法是不可以被重写的;而如果你没有遵守第一条军规时,你试图重写静态方法,此时在编译器是不可能发现该错误的。
假设有这样一个基类
写道
public class Base {
public static void doSomething() {
System.out.println("我是父类的静态方法!Base.doSomething()");
}
public void toOther() {
System.out.println("Base doOther()");
}
public void doSomething(String thing) {
System.out.println("Base.doSomething(String thing)");
}
}
public static void doSomething() {
System.out.println("我是父类的静态方法!Base.doSomething()");
}
public void toOther() {
System.out.println("Base doOther()");
}
public void doSomething(String thing) {
System.out.println("Base.doSomething(String thing)");
}
}
在子类的代码如下:
写道
public class Sub extends Base {
public static void doSomething() {
System.out.println("我是子类的静态方法!Sub.doSomething()");
}
@Override
public void toOther() {
System.out.println("我是子类的非静态方法!");
}
}
public static void doSomething() {
System.out.println("我是子类的静态方法!Sub.doSomething()");
}
@Override
public void toOther() {
System.out.println("我是子类的非静态方法!");
}
}
我们在写一个测试方法
写道
public class Client {
public static void main(String[] args) {
Base base = new Sub();
base.doSomething();
base.toOther();
}
}
public static void main(String[] args) {
Base base = new Sub();
base.doSomething();
base.toOther();
}
}
结果是:
写道
我是父类的静态方法!Base.doSomething()
我是子类的非静态方法!
我是子类的非静态方法!
从结果上我们可以发现静态方法是不可以被重写的。
相关推荐
高考作文写作指导写好高考考场作文的100条军规------.pdf
这是因为直接 catch (Exception ex) 会捕获所有的异常,从而导致程序中的错误不能被及时发现和处理。 军规七:对于 if „ else if „(后续可能有多个 else if …)这种类型的条件判断,最后必须包含一个 else 分支,...
以上只是部分基于华为JAVA编程规范的知识点,具体细节需要参考《JAVA编程军规.doc》《JAVA十大低级错误.doc》《华为_Java编程规范.pdf》《华为JAVA编程规范.doc》等文档。这些规范旨在提升代码质量和团队协作效率,...
三、方法参数不能超过5个 参数太多会影响代码的阅读和使用。减少参数可以通过将多个参数封装成一个类或对象,并在新的类或对象中增加相应的行为,以符合面向对象编程的原则。 四、方法调用尽量不要返回null 返回...
华为java编码军规,经典编码风格规范。极大提高你的编码能力
- **解释**:当一个对象的equals()方法被覆写后,如果没有同时覆写hashCode()方法,可能会导致该对象在哈希表中的行为不符合预期。 - **实践建议**:确保equals()和hashCode()方法的一致性,以避免潜在的问题。 ###...
【信用风险与策略跟踪:长久期城投债的“二十二条军规”】 本文主要讨论了在当前金融市场环境下,投资者面对长久期城投债时应遵循的策略和注意事项。城投债,即城市建设投资债券,通常由地方政府下属的平台公司发行...
这份军规的内容涉及核心军规、字段类军规、索引类军规、SQL类军规以及约定类军规等多个方面,现在我们来详细解读这些知识点。 核心军规强调的是实战经验的重要性,指出背后的教训是用血的代价换来的,要求实用而非...
### MySQL军规-SQL规范详解 #### 一、核心军规 **1. 不在数据库做计算,CPU计算务必移至业务层** - **解释**:数据库的主要职责是存储和检索数据,而非复杂的计算任务。将计算逻辑放到应用程序中执行可以有效减轻...
提高网站访问速度的34条军规。本文讲述的是如何让访问速度增加的一些方法。
标题所提到的“欧巨MIL-DTL-5015系列军规连接器”指向了一系列特定的军用标准连接器。MIL-DTL-5015是美国军用标准(Military Standard)的一种,通常用于描述电气连接器的详细要求,这包括了其物理、电气和环境方面...
### YaHoo军规:前端性能优化35条不可触犯规则详解 #### 一、前言 随着互联网技术的不断发展,用户对于网页加载速度的要求越来越高。为了提供更好的用户体验,YaHoo公司总结出了一套被称为“YaHoo军规”的性能优化...
Java语言的基础知识涵盖广泛,包括但不限于语法、进阶特性、编码规范、设计模式以及编码处理。在本讲座中,我们重点关注了几个关键方面: 首先,程序员应了解并遵循"破窗与童子军军规",这是编程领域的基本道德准则...
### 运维的85条军规:核心知识点解析 #### 1. 承载能力优先 - **重要性**:任何系统设计之初都应当优先考虑其承载能力,即能够处理的最大工作负载量。 - **操作建议**:在考虑优化之前,首先确保系统能够稳定运行在...
标题《SQL优化30条军规》和描述“SQL优化的30条军规,希望可以帮到大家。军规适用场景:并发量大、数据量大的互联网业务,解读:讲解原因,解读比军规更重要”表明了这份文档旨在为处理高并发和大数据量场景下的...
### 移动APP测试的22条军规 #### 一、设备和平台 1. **操作系统**:针对不同的操作系统(如iOS、Android),需要确保应用程序能够在这些平台上正常运行,并且能够兼容各种版本的操作系统。 2. **设备硬件**:考虑到...
这三十六条军规主要围绕数据库的高性能、稳定性以及开发者的实践操作,涵盖了核心军规、字段类军规、索引类军规、SQL类军规以及约定类军规五个部分。在详细介绍这些军规之前,有必要先了解下MySQL数据库开发的一些...
数据库开发的三十六个军规是针对MySQL数据库的实战经验总结,涵盖了从核心原则到具体...对于数据库开发人员而言,如果能在日常工作中遵循这些军规,即使只有一条能够带来帮助,也会对整个项目的成功起到决定性的作用。