抽象方法

一、抽象方法的相关概念:

在某些情况下,类无法(或者没有必要)提供方法的具体实现,可以将此方法声明成抽象方法;

在类中没有方法体的方法,就是抽象方法;

含有抽象方法的类,一定是抽象类。

二、抽象方法的语法:

使用关键字abstract声明抽象方法,一般语法:

[访问权限] abstract 返回值类型 方法名称(参数列表);

如:public abstract void draw();

三、抽象的作用:

1.在面向对象领域,抽象类主要用来进行类型隐藏;也就是使用抽象的类型来编程,但是具体运行时就可以使用具体类型。

2.利用抽象的概念,能够在开发项目中创建扩展性很好的架构,优化程序。

3.抽象类,抽象方法,在软件开发过程中都是设计层面的概念。也就是说,设计人员会设计出抽象类,抽象方法,程序员都是来继承这些抽象类并覆盖抽象方法,实现具体功能。

时间: 2024-12-14 06:50:47

抽象方法的相关文章

PHP中的抽象类与抽象方法/静态属性和静态方法/PHP中的单利模式(单态模式)/串行化与反串行化(序列化与反序列化)/约束类型/魔术方法小结

  前  言  OOP  学习了好久的PHP,今天来总结一下PHP中的抽象类与抽象方法/静态属性和静态方法/PHP中的单利模式(单态模式)/串行化与反串行化(序列化与反序列化). 1  PHP中的抽象类与抽象方法 1.什么是抽象方法?              没有方法体 {} 的方法,必须使用abstract 关键字修饰.这样的方,我们叫做抽象方法.                    abstract function say(); //    抽象方法 2.什么是抽象类?        

PHP 方法重写override 与 抽象方法的实现之间的关系

重写由final关键字决定,但受父类的访问权限限制 实现基于继承,所以实现父类的抽象方法必须可访问到,父类抽象方法不可为private 1.父类某方法能否被子类重写与此方法的访问级别无关 public protected private对某方法内否被重写没有影响,能否被重写要看此方法是否被final修饰(final类不可被继承,final方法不可被重写) 2.但重写方法要受到访问级别的限制,即访问权限不可提升规定 (不仅仅是PHP,其他面向对象语言依然适用),访问权限只可以降低,不可以提升. 3

抽象方法、接口

抽象方法 1.没有方法体 2.必须在抽象类中 3.子类必须重写所有抽象方法,除非子类也是抽象类 4.抽象类不能实例化 5.抽象成员的访问修饰符不能private 6.子类不能通过base关键字去,调用父类抽象方法 多个类,具有同样的同样的行为,如果找得到父类的情况下,使用抽象类,如果找不到父类,则使用接口. 接口 1.接口是一个特殊的抽象类 2.属性.方法.索引器.事件 3.接口成员不能加访问修饰符 4.实现接口的类,必须实现接口中的所有抽象方法,除非是抽象类 5.类是单继承,但是可以多实现 6

java-修饰词、抽象类、抽象方法

1.final:最终的.不可改变的------单独应用的机率小 1)修饰变量:变量不能被改变 2)修饰方法:方法不能被重写 3)修饰类:类不能被继承 2.static final:常量,应用率高 1)必须声明同时初始化 2)通过类名点来访问,不能被改变 3)建议:常量名所有字母都大写,多个单词用_分隔 4)编译器在编译时直接将常量替换为具体的值,效率高 3.抽象方法: 1)由abstract修饰 2)只有方法的定义,没有方法具体的实现(连{}都没有) 4.抽象类: 1)由abstract修饰 2

java基础知识6-- 抽象类,抽象方法,接口,构造方法,类方法等易混淆的知识点

一.抽象类和抽象方法 (B 继承  抽象类A) 抽象类:有抽象方法的一定是抽象类 抽象方法:方法名前有abstract修饰,且方法没有方法体,即{},不需要实现任何功能,只是声明 1.抽象类中的方法有两种: (1)抽象类中的普通方法,可以不必实现 (2)抽象方法,所属的抽象类被继承后,抽象方法必须被重写,除非是被抽象类继承,不必被 抽象类必须被继承,且抽象类不能被实例化,即抽象类A ,不能定义 A a=new A() ; package Interface; /** * Created by w

python 抽象类、抽象方法、接口、依赖注入、SOLIP

1.程序设计原则:SOLIP SOLIP设计原则 1.单一责任原则(SRP) 一个对象对只应该为一个元素负责 2.开放封闭原则(OCP) 对扩展开放,修改封闭 3.里氏替换原则(LSP) 可以使用任何派生类替换基类 4.接口分离原则(ISP) 对于接口进行分类避免一个接口的方法过多 5.依赖倒置原则(DIP) 隔离关系,使用接口或抽象类代指 6.依赖注入(DI)和控制反转原则(ICO) 使用钩子再原来执行流程中注入其他对象 接口: # ==============================

抽象方法和虚方法的区别

1.抽象类关键字 abstract 2.抽象类不能实例化 3.抽象方法没有方法体 4.子类实现抽象方法的快捷键 Ctrl+.+Enter 5.一个类如果继承抽象类,那么重写重写类中的所有方法 7.抽象类不能是静态类和密封类 8.抽象类方法只能存在于抽象类中 9.抽象类中抽象方法只是用来规定子类方法的形式(参数,返回值)约束子类方法的形式

面向对象基础(继承类,抽象方法,接口,委托和事件)

1.页面上实现猫叫,狗叫,虎叫 <asp:Button ID="cat" runat="server" Text="猫叫" onclick="cat_Click" /><br/> <asp:Button ID="dog" runat="server" Text="狗叫" onclick="dog_Click" />

C#虚方法和抽象方法区别

虚方法: 1.virtual方法表示此方法可以被重写, 也就是说这个方法具有多态.父类中的方法是通用方法,可以在子类中重写以重新规定方法逻辑.2.virtual方法可以直接使用,和普通方法一样.3.不是必须重写的. 子类可以使用base.方法 的方式调用, 无论有没有在子类使用override去重写.virtual关键字只是明确标示此方法可以被重写, 其实它和一般的方法没有什么区别相应的sealed关键字标示此方法不可以被重写 抽象方法: 1.抽象方法没有提供实现部分. 2.抽象方法只能在抽象类

20141014C#面向对象抽象方法,抽象类,接口

里氏代换原则.可以用子类的对象替代父类的对象. 抽象依赖原则.依赖——形参,关联 一.抽象方法: 在一些父类中,某些行为不是非常明确,因此无法用代码来具体实现,但是类必须具备此方法,因此把这样的方法定义为抽象方法.abstract 特点:1.只声明,不实现.2.加abstract关键字. eg: 1 public abstract class Ren //类中含有抽象方法,此类也必须是抽象类. 2 { 3 public abstract void Eat(); //以分号结束,没有花括号 4 }