当前位置: 首页 > news >正文

上海浦东医院网站建设Live WordPress

上海浦东医院网站建设,Live WordPress,正规网络教育培训机构,海外免费服务器概述 在 Java 里,抽象类属于特殊的类,不能被实例化,主要用于为子类提供通用的属性与方法,起到模板的作用。 类中描绘了该类所有对象共同的特性,当一个类中给出的信息足够全面时,我们就可以实例化…

概述     

在 Java 里,抽象类属于特殊的类,不能被实例化,主要用于为子类提供通用的属性与方法,起到模板的作用。   

类中描绘了该类所有对象共同的特性,当一个类中给出的信息足够全面时,我们就可以实例化该类;比方说,在Dog类中定义了name,age,fur_color,sex等属性,以及habit,eat等行为时,我们就可以创建一个Dog类对象,来模拟某个具体的Dog,比如你家的宠物狗等。但是,当一个类中给出的信息不够全面时,(比方说有无法确定的行为),它给出的信息不足以描绘出一个具体的对象,这时我们往往不会实例化该类,这种类就是抽象类。打个比方,对于Animal类,是,所有的动物都有吃喝的行为,定义eat方法可以描述动物“吃”这一行为,但是每种动物吃的都不一样,因此一个eat方法并不能准确描述吃什么,怎么吃。这时Animal给出的信息就不足够描述一个对象,我们就不能去实例化Animal类。

抽象类的定义

要定义抽象类,需要在类的声明前添加abstract关键字:

abstract class Animal {// 类的成员变量protected String name;// 构造方法public Animal(String name) {this.name = name;}// 普通方法public void eat() {System.out.println(name + " is eating.");}// 抽象方法public abstract void makeSound();
}

抽象方法

抽象方法指的是只有方法声明,没有方法体的方法,同样需要用abstract关键字来修饰。抽象方法要求子类必须对其进行实现。例如上面代码中的makeSound()方法就是抽象方法。如果一个方法已经确定是抽象方法,那么它绝不能再有方法体

class Dog extends Animal {public Dog(String name) {super(name);}@Overridepublic void makeSound() {System.out.println(name + " says woof!");}
}class Cat extends Animal {public Cat(String name) {super(name);}@Overridepublic void makeSound() {System.out.println(name + " says meow!");}
}public class Main {public static void main(String[] args) {Dog dog = new Dog("Buddy");dog.eat();dog.makeSound();Cat cat = new Cat("Whiskers");cat.eat();cat.makeSound();}
}

Dog和Cat类继承自Animal抽象类,并且实现了makeSound()抽象方法。在Main类的main方法里,创建了Dog和Cat的实例,调用了eat()和makeSound()方法。

抽象类的特点总结

  • 抽象类不能被实例化,但可以有构造方法,其构造方法用于子类实例化时初始化父类的成员变量。
  • 抽象类可以包含普通方法和抽象方法,而普通类不能包含抽象方法。
  • 子类继承抽象类时,必须实现抽象类中的所有抽象方法,否则子类也必须声明为抽象类。
  •     抽象方法 抽象方法的目的就是为了重写,不需要{}
  •  abstract修饰,没有函数体的方法即为抽象方法
  • 只有抽象类才能有抽象方法,非抽象类不能有抽象方法,抽象类里也可以没有抽象方法
  •  抽象类可以有具体方法
  •  abstract和private不能同时使用,private修饰的子类看不到,子类也无法重写
  • abstract和static不能同时使用,static针对类的,abstract针对对象层次
  • 抽象类可以构造方法,目的是子类在初始化前先初始化父类
  • 子类继承抽象类,如果不想实现抽象方法,子类也要是抽象类
http://www.dtcms.com/a/576483.html

相关文章:

  • 做众筹网站有哪些做网站推广前途
  • 织梦网站如何上传模板建站符合哪些工作需求?
  • 网站数据统计怎么做汕头小程序定制
  • 汝南网站建设东莞市找工作上什么网
  • 用php做网站用什么框架flask网站开发视频
  • 企业网站网址举例义乌代加工手工活官网
  • 温州网站建设制作公司天津移动网站设计
  • 搜索引擎优化怎么推广来客seo
  • 网站开发公司需要投入什么资源网站开发工具安卓版
  • 会计可以做网站么网站备案填写
  • 网站开发属于计算机系统开发吗网站建设kpi考核
  • 平顶山做网站山东工艺美术学院网站建设公司
  • 制作宝安网站建设济宁 创意大厦 网站建设
  • 安平县网站建设asp.net网站开发实例视频教程
  • 免费做电脑网站吗软件开发培训班排名前十名
  • 网站建设指导合同晋江规划建设局网站
  • 教育网站建设的策划书在哪里看片可以免费
  • 旅游网站项目策划书网站开发的主要技术
  • 建站宝盒源代码网站制作的评价指标
  • 网上做网站怎么防止被骗做网站一天能接多少单
  • 校园网站建设的感受论文百度广告官网
  • 智能建站制作什么网站做外链优化好
  • 网站2级域名 还是子目录吉林网站建设找哪家
  • 网站程序怎么做网站建设 软件开发的公司哪家好
  • 长春火车站最新通知从哪里设置网站关键词
  • 手机网站前端写法全网营销平台有哪些
  • 网站建设需要学编程么常州工程交易网
  • 自已建外贸网站做家乡网站
  • 专业的网站设计制作公司wordpress 淘客主题
  • 做建筑效果图最好的网站企业培训课程安排表