接口:

/** Java接口中的數據成員必須初始化,該成員有隱藏的final、satic、常量,* 一次賦值后不可在賦值* 成員方法訪問修飾符必須是公共修飾符,可以顯示聲明也可以不聲明* 成員方法必須全部是抽象方法*/
interface IPerson {
String _className="高中一年級";
public String GetNameAndAge();
}

抽象类:

/** 抽象類必須包含抽象方法,並且類必須顯示聲明abstract,抽象成員方法不能實例化* final如果類關鍵字聲明為final,那麼此類不可以派生* 如果方法聲明為final,那麼此方法不可以複寫* 如果數據成員聲明為final,那麼此成員只能賦值一次*/
abstract class Person implements IPerson {
final String _name;
int _age;
public Person(String name,int age)
{_name=    name;_age=age;
}
public abstract String GetNameAndAge();
}

派生类:

/** super類似于C#中的base*/
public class Student extends Person {private String _school;public Student(String name, int age, String school) {super(name, age);_school = school;}public String getSchool() {return _school;}public String GetNameAndAge() {return "Name:" + super._name + ";Age:" + super._age;}/** Java中,对象比较默认的Equals方法是继承于基类Object,* 所以在子类中必须把基类的Equals重写,* 才能使当前类中的equals起作用*/public boolean equals(Object obj) {boolean _result = false;if (obj != null) {Student _student1 = this;if (obj instanceof Student) {Student _student2 = (Student) obj;if (_student1.getSchool().equals(_student2.getSchool()))_result = true;}}return _result;}
}

入口类:

public class ExecStudent {
public static void main(String[] args)
{Student _student=new     Student("zhang san",19,"riben university");System.out.println("ClassName:"+IPerson._className+";School:"+_student.getSchool());System.out.println("Name and age:"+_student.GetNameAndAge());Student _student1=new Student("李三",18,"开开中学");Student _student2=new Student("李三",18,"开开中学");if(_student1.equals(_student2))System.out.println("二者是同一個人喲~");elseSystem.out.println("二者不是同一個人喲~");
}
}

转载于:https://www.cnblogs.com/fang-beny/p/3292105.html

接口、抽象类、方法复写、类Equals方法重写相关推荐

  1. EJB3.0学习笔记---多接口的时,实现类处理方法:

    EJB学习笔记--- 1.胖客户端:指的是定义的接口太多了,接口做的工作太多; 胖接口: 2.EJB实现类型的定义,用注解的方式,当一个EJBbean,实现了多个接口的时候, 需要用注解的方式指明哪一 ...

  2. python字符串equals方法_编写equals方法

    我们知道List是一种有序链表:List内部按照放入元素的先后顺序存放,并且每个元素都可以通过索引确定自己的位置. List还提供了boolean contains(Object o)方法来判断Lis ...

  3. JAVA-初步认识-第十一章-object类-equals方法覆盖

    一. 现在要谈论equals方法另一个方面.如果不写equals方法,直接用==来比较也是可以的,貌似equals方法有点多余. 现在不比较对象是否相等,而是比较对象中的特定内容,比如说对象的年龄,之 ...

  4. python methodtype_Python的实例定属性和方法或类绑定方法

    一.给实例对象绑定属性和方法: 1.给实例绑定属性:先定义一个Student类 #!/usr/bin/python class Student(object): pass 然后绑定属性: s = St ...

  5. python类中方法调用自己类的方法_python 类中方法总结 --- 实例方法、类方法、静态方法...

    在python的类语法中,可以出现三种方法,具体如下: (1)实例方法 1)第一个参数必须是实例本身,一般使用[self]表示. 2)在实例方法中,可以通过[self]来操作实例属性,[类名]来操作类 ...

  6. jQuery 样式操作||操作 css 方法/设置类样式方法

    操作 css 方法 <!DOCTYPE html> <html lang="en"><head><meta charset="U ...

  7. php 类调用本身方法,PHP 类中方法的声明与调用

    方法(method)与函数非常类似,只不过方法是用来定义类的行为的. 与函数一样,方法可以接受输入参数,可以向调用者返回一个值. 方法的调用也与函数相同,只是在方法签名要加上调用方法的对象的名称,如下 ...

  8. 重写Java Object类中的equals()方法

    Java中的Object类中的equals方法 Object类的equals方法 重写Object类的equals()方法 Person类默认继承了Object类,所以可以使用Object类的equa ...

  9. java的equals方法_Java LocalDateTime类| 带示例的equals()方法

    java的equals方法 LocalDateTime类equals()方法 (LocalDateTime Class equals() method) equals() method is avai ...

最新文章

  1. 科普 | 你必须了解的漏洞利用缓解及对抗技术
  2. 【NLP】BERT大魔王为何在商业环境下碰壁?
  3. Apache Kafka 1.0.0正式发布!
  4. php数组foreach循环添加键值对_在PHP的foreach循环中插入一个$key作为变量
  5. 【CF1204D】Kirk and a Binary String【结论题】【LIS】
  6. post和get传值
  7. python 内置模块-re
  8. (38)System Verilog线程并行执行(fork-join_none)
  9. popstate_详解HTML5之pushstate、popstate操作history,无刷新改变当前url
  10. 从仁慈的独裁者到微软打工人,Python之父和Python将走向何方?
  11. mac安装ElasticSearch
  12. 68.x的平方根(力扣leetcode) 博主可答疑该问题
  13. steam授权_验号机器人正式上线,支持检验csgo账号、steam账号信息
  14. 最新的ESD(ElectroStatic Discharge)静电介绍及其标准下载(见文尾)
  15. 【异常解决】DolphinScheduler-2.0.5 工作流实例无法调度和停止异常
  16. CM源码(CyanogenMod)源码编译
  17. Android Killer中apktool插件更新
  18. DIY 章鱼猫活动 |
  19. https的数字签名流程
  20. 英语四级作文备战全攻略

热门文章

  1. 云南省2021高考成绩排名查询,2020年云南高考成绩位次排名及一分一段表查询
  2. 【Kaggle-MNIST之路】两层的神经网络Pytorch(四行代码的模型)
  3. 第三章:3.0 本章内容介绍
  4. 完全使用UDP登录Linux
  5. unity点击按钮换按钮图标
  6. html以及css的部分相关内容及运用
  7. C++ 对TXT 的串并行读写
  8. 软件项目质量保证——编码规范
  9. 在Access和 SQL Server中通配符的应用方法
  10. [概统]本科二年级 概率论与数理统计 第三讲 离散型随机变量