遵守合约:覆盖的规则

/*39遵守合约:覆盖的规则
 * 1.参数必须要一致(参数类型一致、参数数量一致、参数顺序一致)
 * 2.返回类型必须一致,即父类子类之间
 * 3.方法的访问权限必须一致*/

 1 class Animalb{
 2     String name;
 3     String food;
 4     int hunger;
 5
 6     public void makeNoise(){
 7         System.out.println("这是父类的方法");
 8     }
 9     public void eat(){}
10 }
11 public class Zhunshou extends Animalb{
12     public void makeNoise( int i){ //无法覆盖Animalb的方法,除去参数后才能覆盖父类方法
13         System.out.println("狗狗就喜欢汪汪汪");
14     }
15     public  void eat(){ //与Animalb不一样,那么久不能覆盖方法,只有eat方法被覆盖掉
16         System.out.println("狗狗就是喜欢吃骨头");
17     }
18     public static void main(String[] args){
19         Zhunshou d = new Zhunshou();
20         d.makeNoise();
21         d.eat();
22     }
23 }

时间: 2024-10-13 02:25:48

遵守合约:覆盖的规则的相关文章

所有程序员都应该遵守的 11 条规则

看到一篇翻译很好的博文,在这分享下 1: 技术是你获取解决方案的方法,而不是解决方案本身 我们可以得意忘形地使用最新的JavaScript框架-嗯哼,Angular-IoC 容器,编程语言,甚至操作系统.但作为一个程序员,所有这些东西并不是问题真正的解决方案,相反,它们只是帮助我们解决问题的简单工具. 在面对那些我们喜欢或是当前非常流行的特殊技术时,我们必须非常小心,而不是变得过于疯狂.以免步入这样一个险境:仅仅因为我们手里拿了一把闪闪发亮的锤子,就把所有的问题都看作钉子. 2: 对代码而言,“

Nginx之location 匹配规则详解

Nginx之location 匹配规则详解 关于一些对location认识的误区 1. location 的匹配顺序是"先匹配正则,再匹配普通". 矫正: location 的匹配顺序其实是"先匹配普通,再匹配正则".我这么说,大家一定会反驳我,因为按"先匹配普通,再匹配正则"解释不了大家平时习惯的按"先匹配正则,再匹配普通"的实践经验.这里我只能暂时解释下,造成这种误解的原因是:正则匹配会覆盖普通匹配(实际的规则,比这复杂,

Nginx之location匹配规则(个人总结)

Location匹配的url的语法规则: syntax: location [=|~|~*|^~|@] /uri/ { - } default: no context: server=            表示精确匹配 ^~             表示普通字符匹配,不继续匹配正则,一般用来匹配目录 ~            表示区分大小写的正则匹配 ~*              表示不区分大小写的正则匹配 !~ 和!~*       分别表示区分大小写和不区分大小写不匹配的正则 @    

EOS智能合约开发(三):EOS创建和管理账号

没有看前面文章的小伙伴可以看一下 EOS智能合约开发(一):EOS环境搭建和启动节点 EOS智能合约开发(二):EOS创建和管理钱包 创建好钱包.密钥之后,接下来你就可以创建账号了,账号是什么?账号保存在区块链上的人类可读的标志符. 创建账号的命令: $ cleos createaccount eosio ${new_account} ${owner_key} ${active_key} 其中eosio是超级用户,需要靠超级用户来创建其它的新用户,eosio后面就是你的新用户的用户名. 除了新的

C++ 继承体系中的名称覆盖

首先一个简单的样例: int x; int f() { double x; cin >> x; return x; } 在上述代码中.函数f的局部变量x掩盖了全局变量x.这得从 "C++的名字查找机制"说起,首先.在函数f的局部作用域中查找.(甚至是语句块).假设不存在,到上一层的作用域再进行查找,... 该命名空间中查找,最后是全局作用域. 在类的继承体系中,名字覆盖问题也是非常困扰的.此处的"名字"但是是函数名,变量名,typedef, enum都能

【基础篇】各类语言的变量命名规则

----------------------------------------------JAVA----------------------------------------------- JAVA-区分大小写:类名和接口名是首字母大写:变量和方法是驼峰式:包名完全小写:静态变量完全大写 1. Package(包)命名: 完全小写 | 例如net.ebseries.modules. 2. Class(类)命名:首字母大写 | 多个单词合成,要求每个单词的首字母也要大写,例如:DataFil

C/C++变量命名规则

变量命名规则是为了增强代码的可读性和容易维护性.以下为C++必须遵守的变量命名规则: 1. 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成. 2. 第一个字母必须是字母或者下划线开头. 3. 不能使用C++关键字来命名变量,以免冲突. 4. 变量名区分大小写. 变量命名规则: 一. 用最短字符表示最准确的意义. 二. 使用变量前缀. 1. 整型前缀 int nId; //int前缀:n short sId; //short前缀:s unsigned int unId //

C/C++变量命名规则,个人习惯总结【转载】

C_C++变量命名规则 原文地址:http://blog.sina.com.cn/s/blog_8a7012cf01017h9p.html 变量命名规则是为了增强代码的可读性和容易维护性.以下为C++必须遵守的变量命名规则: 1. 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成. 2. 第一个字母必须是字母或者下划线开头. 3. 不能使用C++关键字来命名变量,以免冲突. 4. 变量名区分大小写. 变量命名规则: 一.             用最短字符表示最准确的意义.

1:CSS中一些@规则的用法小结 2: @media用法详解

第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下 at-rule是一个声明,为CSS提供执行或怎么表现的指令.每个声明以@开头,后紧跟一个可用的关键字,这个关键字充当一个标识符,用于表示CSS该做什么.这是一个通用的语法,尽管每个at-rule有其它语法变体.常规规则 常规规则遵循下面的语法: 复制代码 代码如下: @[KEYWORD] (RULE); @charset