小编给大家分享一下Java抽象定义的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在OOP这个概念中,所有的对象都是通过类来描述的;但是并不是所有的类都是用来描述对象的。如果一个类没有包含足够的信息来描述一个具体的对象,这样的类称为抽象类。抽象类:(1)抽象类不能实例化对象,如果实例化某个对象,编译无法通过。只有抽象类的非抽象子类可以创建对象(2)可以包含:成员变量、成员方法、构造方法等。(3)构造方法、类方法(用static修饰的方法)不能声明为抽象方法抽象方法:(1)如果一个类包含抽象免费云主机域名方法,那么该类一定是抽象类(2)任何子类必须重写父类的抽象方法,或者声明自身为抽象类定义:abstract class 类名Animal:抽象类——–getName()、move()、drink()Reptile、Mammal:继承抽象类蛇、老虎、山羊、兔子:分别继承Reptile或Mammalfammer:bringWater()、feedWater(Animal animal)—- 负责将水带到指定的地方,然后动物移动去目的地,喝水代码如下:执行结果:总结:如果每种动物不是抽象出drink和move方法的话,就无法实现多态。农夫类就需要根据参数的不同重载多个feedWater。如果继续添加动物那么重载个数就越来越多。为了方便对比理解,我也按照常规思维去写了一下,代码如下:手敲了这个例子,发现基础很重要呀,以前学习的不细致,导致很多地方迷糊不知道为啥那么写。(1)一个.java文件中可以定义多个class类,但是只有一个可以定义为public,且这个类名必须和文件名相同(2)抽象类继承抽象类,不用覆盖其抽象方法(原因也很简单呀,本身他就是抽象的不能实现方法体)。而非抽象类继承抽象类必须覆盖抽象方法,非抽象方法非必要。(3)重写和重载的区别(高频面试题 ?)重载:定义相同的方法名,参数不同。属于编译时多态重写:子类重写父类的方法@Override。属于运行时多态
以上是“Java抽象定义的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注百云主机行业资讯频道!
这篇文章给大家分享的是有关python如何使用import模块的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在Python经常使用import声明,以使用其他模块(也就是其它.py文件)中定义的对象。1) 使用__name__当我们…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。