1、 抽象类与接口本章内容1.抽象类的概念、定义与应用抽象类的概念、定义与应用2.接口的概念、定义与应用接口的概念、定义与应用 介绍几种常见的设计模式介绍几种常见的设计模式3.抽象类与接口的比较抽象类与接口的比较 相同点相同点 不同点不同点抽象类 包含有包含有至少一个至少一个抽象方法的类称为抽象类,抽象方法的类称为抽象类,用用abstract关键字修饰,关键字修饰,不能创建自己的对不能创建自己的对象象,抽象方法交由子类去覆盖,抽象方法交由子类去覆盖(完成方法体完成方法体)。抽象方法:抽象方法:只有方法的头部,没有方法体只有方法的头部,没有方法体。在继承抽象类的子类中来在继承抽象类的子类中来实现父类
2、中的所有实现父类中的所有抽象方法抽象方法(完成方法体部分完成方法体部分)。声明抽象方法与抽象类声明抽象方法与抽象类权限修饰符权限修饰符 abstract returnType 方法名方法名(paramlist);说明说明:(1)只有方法头部,没有方法体,以只有方法头部,没有方法体,以“;”结束。结束。(2)构造方法不能声明为抽象方法。构造方法不能声明为抽象方法。例如:例如:public abstract float getArea();权限修饰符权限修饰符 abstract class 类名称类名称 成员属性成员属性;方法()方法();/定义一般方法定义一般方法 构造方法构造方法();abst
3、ract 方法()方法();/定义抽象方法定义抽象方法 抽象类的作用 抽象类本身不能实例化,而抽象类的子类实现抽象类本身不能实例化,而抽象类的子类实现了抽象类的抽象方法了抽象类的抽象方法,因此通常都是定义抽象,因此通常都是定义抽象类的引用指向子类的实例,自动完成向上转型类的引用指向子类的实例,自动完成向上转型,是对象多态性的一个很好体现。是对象多态性的一个很好体现。AbstractClass ac=new AbstractClassImp();抽象类应用举例有三类图书:科技书、文艺书和教材。三类书的属性有三类图书:科技书、文艺书和教材。三类书的属性和方法如下图所示,请用抽象类的方式完成相关代码
4、和方法如下图所示,请用抽象类的方式完成相关代码的编写。的编写。(图书价格图书价格=每页价格每页价格*页码页码*折扣折扣)文艺书类 页码 折扣 每页价格显示种类显示图书价格 科技书类 页码 折扣 每页价格显示种类显示图书价格 教材类 页码 折扣 每页价格显示种类显示图书价格/定义抽象类定义抽象类Bookabstract class Book int bookPage;float discount;float pagePrice;/定义三个成员属性定义三个成员属性 public Book(int bookPage,float discount,float pagePrice)this.bookPa
5、ge=bookPage;this.discount=discount;this.pagePrice=pagePrice;abstract void showKind();/显示图书种类显示图书种类 public float getPrice()return bookPage*discount*pagePrice;class ScienceBook extends Book/定义科技书定义科技书 public ScienceBook(int bookPage,float discount,float pagePrice)super(bookPage,discount,pagePrice);pub
6、lic void showKind()/实现抽象方法实现抽象方法 System.out.println(The books type is science);class ArtBook extends Book/定义文艺书定义文艺书 public ArtBook(int bookPage,float discount,float pagePrice)super(bookPage,discount,pagePrice);public void showKind()/实现抽象方法实现抽象方法 System.out.println(The books type is art);public clas
7、s BookTest public static void main(String args)Book sb=new ScienceBook(520,0.7f,0.2f);sb.showKind();System.out.println(getPrice();Book tb=new ArtBook(400,0.8f,0.3f);tb.price=tb.getPrice(400,0.8f);tb.showKind();System.out.println(getPrice();抽象类的实际应用如何在实际应用中定义抽象类如何在实际应用中定义抽象类?(1)提取子类共有的属性提取子类共有的属性(可选项
8、可选项)(2)提取子类共有的方法提取子类共有的方法(可选项可选项)(3)提取子类共有的方法,但该方法的方法体子类各有提取子类共有的方法,但该方法的方法体子类各有不同,则此方法定义为抽象方法。不同,则此方法定义为抽象方法。(必须项必须项)练习练习:学生有姓名、年龄和成绩属性;教师有姓名、年学生有姓名、年龄和成绩属性;教师有姓名、年龄和职称属性;学生和教师都能讲话,但所讲的内龄和职称属性;学生和教师都能讲话,但所讲的内容不同。采用抽象类的方式完成上述代码的编写。容不同。采用抽象类的方式完成上述代码的编写。接口的定义现实世界的接口:现实世界的接口:两个不同物体之间相互交互所必须通过的一个中介,没有这
9、两个不同物体之间相互交互所必须通过的一个中介,没有这个中介,两者无法交互。个中介,两者无法交互。软件世界的接口:软件世界的接口:(1)(1)狭义:某个程序设计语言所提供的狭义:某个程序设计语言所提供的APIAPI。(2)(2)广义:人与软件交互的图形界面广义:人与软件交互的图形界面(GUI)(GUI)。JavaJava中的接口:中的接口:一种特殊的一种特殊的“类类”,只能包含,只能包含常量常量和和抽象方法抽象方法,属于引用数,属于引用数据类型。据类型。接口的作用接口的作用 为什么要定义接口:为什么要定义接口:JavaJava出于安全性考虑,出于安全性考虑,只支持单重继承只支持单重继承,而不支持
10、多重继承。,而不支持多重继承。多重继承更能表达现实世界。多重继承更能表达现实世界。接口的作用:接口的作用:配合继承解决配合继承解决JavaJava无法多继承的缺点,提供方法声明无法多继承的缺点,提供方法声明与实现相分离的机制,与实现相分离的机制,使实现接口的各个类表现出多使实现接口的各个类表现出多态性态性。A A a=new a=new B B();();(B(B是实现了接口是实现了接口A A的类的类)接口的定义一个接口的定义包含以下部分:一个接口的定义包含以下部分:public interface MyInterface extends Interface1 public static fi
11、nal double E=2.718282;public abstract void doSomething(int i,double x);public abstract int doSomethingElse(String s);访问控制符访问控制符接口关键字接口关键字接口名接口名接口可以继承接口接口可以继承接口接口中可以定义常量接口中可以定义常量抽象方法,只声明不实现抽象方法,只声明不实现接口的实现接口的实现是交给类来完成的。接口的实现是交给类来完成的。public class MyInterfaceImp extends 父类名父类名 implements 接口名接口名 继承了接口中的
12、常量继承了接口中的常量 public void doSomething(int i,double x)public int doSomethingElse(String s)一个类可以实现多个接口一个类可以实现多个接口实现接口的抽象方法,添加方法体实现接口的抽象方法,添加方法体接口的简单应用定义一个测试类,分别创建圆形类和矩形类的对象,定义一个测试类,分别创建圆形类和矩形类的对象,输出各自的面积和周长。输出各自的面积和周长。接口的高级应用接口的高级应用-设计模式设计模式 设计模式针对面向对象系设计模式针对面向对象系统中重复出现的设计问题,提统中重复出现的设计问题,提出一个通用的设计方案,并予出
13、一个通用的设计方案,并予以系统化的命名和动机解释。以系统化的命名和动机解释。设计模式描述了问题、解决方设计模式描述了问题、解决方案、在什么条件下使用该解决案、在什么条件下使用该解决方案及其效果。方案及其效果。解决方案是解决该问题的解决方案是解决该问题的一组精心安排的通用的类和接一组精心安排的通用的类和接口口,再经过定制和实现就可用,再经过定制和实现就可用来解决特定上下文中的问题。来解决特定上下文中的问题。代理模式应用的场景应用的场景:一个对象不想或者不能直接引用另外一个对象,那么通过代:一个对象不想或者不能直接引用另外一个对象,那么通过代理可以在两者之间起到连接作用。理可以在两者之间起到连接作
14、用。(1)(1)抽象目标角色抽象目标角色:声明真实目标对象和代理的共同接口。:声明真实目标对象和代理的共同接口。(2)(2)代理角色:代理角色:内部包含对真实目标对象的引用。内部包含对真实目标对象的引用。(3)(3)真实目标角色:真实目标角色:是客户端真正要交流的对象,需要被代理。是客户端真正要交流的对象,需要被代理。适配器模式使用场景使用场景:将一个类的接口:将一个类的接口(被适配对象被适配对象)转换成客户希望调用转换成客户希望调用的另外一个接口的另外一个接口(目标目标)。适配器模式模式的三种角色:模式的三种角色:目标目标(Target):(Target):客户想使用的接口。客户想使用的接口
15、。被适配者被适配者(Adaptee):(Adaptee):一个已经存在的接口或抽象类,需要被适配。一个已经存在的接口或抽象类,需要被适配。适配器适配器(Adapter):(Adapter):是一个类,实现目标接口并包含被适配者的引用。是一个类,实现目标接口并包含被适配者的引用。接口的特点接口的特点(1)(1)接口可以定义为多继承。接口可以定义为多继承。类不能多继承。类不能多继承。interface A double getArea();interface B String getName();public interface C extends A,B String getAddress();
16、(2)(2)接口没有最高层,类有最高层接口没有最高层,类有最高层-ObjectObject接口的特点(3)(3)接口中的方法接口中的方法默认为默认为public abstractpublic abstract;接口中的;接口中的成员属性成员属性默认为默认为public static finalpublic static final。例如:例如:double PI=3.14f;系统默认为系统默认为public static final double PI=3.14159;(4)(4)接口中的方法只能是抽象方法,接口中的方法只能是抽象方法,不存在非抽象方不存在非抽象方法和构造方法。法和构造方法。抽
17、象类与接口的比较-相同点(1)(1)都包含抽象方法,必须被子类实现。都包含抽象方法,必须被子类实现。(2)(2)不能被实例化。不能被实例化。(3)(3)都是引用数据类型。可以声明抽象类及接口变量,都是引用数据类型。可以声明抽象类及接口变量,并将子类的对象赋给抽象类变量。并将子类的对象赋给抽象类变量。AbstractClass ac=new AbstractClassImp();AbstractClass ac=new AbstractClassImp();或将实现接口的类的对象赋给接口变量。或将实现接口的类的对象赋给接口变量。Interface interVarInterface interV
18、arnew InterfaceImp();new InterfaceImp();抽象类与接口的比较-区别比较点比较点抽象类抽象类接口接口定义定义abstract classabstract classinterfaceinterface组成组成变量、常量、构造方法、抽象变量、常量、构造方法、抽象方法、方法方法、方法全局常量、抽象方法全局常量、抽象方法子类子类子类通过子类通过extendsextends继承,一个子继承,一个子类只能继承一个抽象类类只能继承一个抽象类子类通过子类通过implementsimplements实现,实现,子类可以实现多个接口子类可以实现多个接口关系关系一个抽象类可以实
19、现多个接口一个抽象类可以实现多个接口接口不能继承抽象类但可接口不能继承抽象类但可以实现多个接口以实现多个接口实现限制实现限制存在单继承局限存在单继承局限不存在此限制不存在此限制典型设计典型设计模式模式模板模式模板模式代理模式、适配器模式代理模式、适配器模式优先使用接口,接口没有单继承这个限制优先使用接口,接口没有单继承这个限制11醉翁亭记 1反复朗读并背诵课文,培养文言语感。2结合注释疏通文义,了解文本内容,掌握文本写作思路。3把握文章的艺术特色,理解虚词在文中的作用。4体会作者的思想感情,理解作者的政治理想。一、导入新课范仲淹因参与改革被贬,于庆历六年写下岳阳楼记,寄托自己“先天下之忧而忧,
20、后天下之乐而乐”的政治理想。实际上,这次改革,受到贬谪的除了范仲淹和滕子京之外,还有范仲淹改革的另一位支持者北宋大文学家、史学家欧阳修。他于庆历五年被贬谪到滁州,也就是今天的安徽省滁州市。也是在此期间,欧阳修在滁州留下了不逊于岳阳楼记的千古名篇醉翁亭记。接下来就让我们一起来学习这篇课文吧!【教学提示】结合前文教学,有利于学生把握本文写作背景,进而加深学生对作品含义的理解。二、教学新课目标导学一:认识作者,了解作品背景作者简介:欧阳修(10071072),字永叔,自号醉翁,晚年又号“六一居士”。吉州永丰(今属江西)人,因吉州原属庐陵郡,因此他又以“庐陵欧阳修”自居。谥号文忠,世称欧阳文忠公。北宋
21、政治家、文学家、史学家,与韩愈、柳宗元、王安石、苏洵、苏轼、苏辙、曾巩合称“唐宋八大家”。后人又将其与韩愈、柳宗元和苏轼合称“千古文章四大家”。关于“醉翁”与“六一居士”:初谪滁山,自号醉翁。既老而衰且病,将退休于颍水之上,则又更号六一居士。客有问曰:“六一何谓也?”居士曰:“吾家藏书一万卷,集录三代以来金石遗文一千卷,有琴一张,有棋一局,而常置酒一壶。”客曰:“是为五一尔,奈何?”居士曰:“以吾一翁,老于此五物之间,岂不为六一乎?”写作背景:宋仁宗庆历五年(1045年),参知政事范仲淹等人遭谗离职,欧阳修上书替他们分辩,被贬到滁州做了两年知州。到任以后,他内心抑郁,但还能发挥“宽简而不扰”的
22、作风,取得了某些政绩。醉翁亭记就是在这个时期写就的。目标导学二:朗读文章,通文顺字1初读文章,结合工具书梳理文章字词。2朗读文章,划分文章节奏,标出节奏划分有疑难的语句。节奏划分示例环滁/皆山也。其/西南诸峰,林壑/尤美,望之/蔚然而深秀者,琅琊也。山行/六七里,渐闻/水声潺潺,而泻出于/两峰之间者,酿泉也。峰回/路转,有亭/翼然临于泉上者,醉翁亭也。作亭者/谁?山之僧/曰/智仙也。名之者/谁?太守/自谓也。太守与客来饮/于此,饮少/辄醉,而/年又最高,故/自号曰/醉翁也。醉翁之意/不在酒,在乎/山水之间也。山水之乐,得之心/而寓之酒也。节奏划分思考“山行/六七里”为什么不能划分为“山/行六七
23、里”?明确:“山行”意指“沿着山路走”,“山行”是个状中短语,不能将其割裂。“望之/蔚然而深秀者”为什么不能划分为“望之蔚然/而深秀者”?明确:“蔚然而深秀”是两个并列的词,不宜割裂,“望之”是总起词语,故应从其后断句。【教学提示】引导学生在反复朗读的过程中划分朗读节奏,在划分节奏的过程中感知文意。对于部分结构复杂的句子,教师可做适当的讲解引导。目标导学三:结合注释,翻译训练1学生结合课下注释和工具书自行疏通文义,并画出不解之处。【教学提示】节奏划分与明确文意相辅相成,若能以节奏划分引导学生明确文意最好;若学生理解有限,亦可在解读文意后把握节奏划分。2以四人小组为单位,组内互助解疑,并尝试用“
24、直译”与“意译”两种方法译读文章。3教师选择疑难句或值得翻译的句子,请学生用两种翻译方法进行翻译。翻译示例:若夫日出而林霏开,云归而岩穴暝,晦明变化者,山间之朝暮也。野芳发而幽香,佳木秀而繁阴,风霜高洁,水落而石出者,山间之四时也。直译法:那太阳一出来,树林里的雾气散开,云雾聚拢,山谷就显得昏暗了,朝则自暗而明,暮则自明而暗,或暗或明,变化不一,这是山间早晚的景色。野花开放,有一股清幽的香味,好的树木枝叶繁茂,形成浓郁的绿荫。天高气爽,霜色洁白,泉水浅了,石底露出水面,这是山中四季的景色。意译法:太阳升起,山林里雾气开始消散,烟云聚拢,山谷又开始显得昏暗,清晨自暗而明,薄暮又自明而暗,如此暗明
25、变化的,就是山中的朝暮。春天野花绽开并散发出阵阵幽香,夏日佳树繁茂并形成一片浓荫,秋天风高气爽,霜色洁白,冬日水枯而石底上露,如此,就是山中的四季。【教学提示】翻译有直译与意译两种方式,直译锻炼学生用语的准确性,但可能会降低译文的美感;意译可加强译文的美感,培养学生的翻译兴趣,但可能会降低译文的准确性。因此,需两种翻译方式都做必要引导。全文直译内容见我的积累本。目标导学四:解读文段,把握文本内容1赏析第一段,说说本文是如何引出“醉翁亭”的位置的,作者在此运用了怎样的艺术手法。明确:首先以“环滁皆山也”五字领起,将滁州的地理环境一笔勾出,点出醉翁亭坐落在群山之中,并纵观滁州全貌,鸟瞰群山环抱之景
26、。接着作者将“镜头”全景移向局部,先写“西南诸峰,林壑尤美”,醉翁亭坐落在有最美的林壑的西南诸峰之中,视野集中到最佳处。再写琅琊山“蔚然而深秀”,点山“秀”,照应上文的“美”。又写酿泉,其名字透出了泉与酒的关系,好泉酿好酒,好酒叫人醉。“醉翁亭”的名字便暗中透出,然后引出“醉翁亭”来。作者利用空间变幻的手法,移步换景,由远及近,为我们描绘了一幅幅山水特写。2第二段主要写了什么?它和第一段有什么联系?明确:第二段利用时间推移,抓住朝暮及四季特点,描绘了对比鲜明的晦明变化图及四季风光图,写出了其中的“乐亦无穷”。第二段是第一段“山水之乐”的具体化。3第三段同样是写“乐”,但却是写的游人之乐,作者是
27、如何写游人之乐的?明确:“滁人游”,前呼后应,扶老携幼,自由自在,热闹非凡;“太守宴”,溪深鱼肥,泉香酒洌,美味佳肴,应有尽有;“众宾欢”,投壶下棋,觥筹交错,说说笑笑,无拘无束。如此勾画了游人之乐。4作者为什么要在第三段写游人之乐?明确:写滁人之游,描绘出一幅太平祥和的百姓游乐图。游乐场景映在太守的眼里,便多了一层政治清明的意味。太守在游人之乐中酒酣而醉,此醉是为山水之乐而醉,更是为能与百姓同乐而醉。体现太守与百姓关系融洽,“政通人和”才能有这样的乐。5第四段主要写了什么?明确:写宴会散、众人归的情景。目标导学五:深入解读,把握作者思想感情思考探究:作者以一个“乐”字贯穿全篇,却有两个句子别
28、出深意,不单单是在写乐,而是另有所指,表达出另外一种情绪,请你找出这两个句子,说说这种情绪是什么。明确:醉翁之意不在酒,在乎山水之间也。醉能同其乐,醒能述以文者,太守也。这种情绪是作者遭贬谪后的抑郁,作者并未在文中袒露胸怀,只含蓄地说:“醉能同其乐,醒能述以文者,太守也。”此句与醉翁亭的名称、“醉翁之意不在酒,在乎山水之间也”前后呼应,并与“滁人游”“太守宴”“众宾欢”“太守醉”连成一条抒情的线索,曲折地表达了作者内心复杂的思想感情。目标导学六:赏析文本,感受文本艺术特色1在把握作者复杂感情的基础上朗读文本。2反复朗读,请同学说说本文读来有哪些特点,为什么会有这些特点。(1)句法上大量运用骈偶
29、句,并夹有散句,既整齐又富有变化,使文章越发显得音调铿锵,形成一种骈散结合的独特风格。如“野芳发而幽香,佳木秀而繁阴”“朝而往,暮而归,四时之景不同,而乐亦无穷也”。(2)文章多用判断句,层次极其分明,抒情淋漓尽致,“也”“而”的反复运用,形成回环往复的韵律,使读者在诵读中获得美的享受。(3)文章写景优美,又多韵律,使人读来不仅能感受到绘画美,也能感受到韵律美。目标导学七:探索文本虚词,把握文言现象虚词“而”的用法用法文本举例表并列1.蔚然而深秀者;2.溪深而鱼肥;3.泉香而酒洌;4.起坐而喧哗者表递进1.而年又最高;2.得之心而寓之酒也表承接1.渐闻水声潺潺,而泻出于两峰之间者;2.若夫日出
30、而林霏开,云归而岩穴暝;3.野芳发而幽香,佳木秀而繁阴;4.水落而石出者;5.临溪而渔;6.太守归而宾客从也;7.人知从太守游而乐表修饰1.朝而往,暮而归;2.杂然而前陈者表转折1.而不知人之乐;2.而不知太守之乐其乐也虚词“之”的用法用法文本举例表助词“的”1.泻出于两峰之间者;2.醉翁之意不在酒;3.山水之乐;4.山间之朝暮也;5.宴酣之乐位于主谓之间,取消句子独立性而不知太守之乐其乐也表代词1.望之蔚然而深秀者;2.名之者谁(指醉翁亭);3.得之心而寓之酒也(指山水之乐)【教学提示】更多文言现象请参见我的积累本。三、板书设计路线:环滁琅琊山酿泉醉翁亭风景:朝暮之景四时之景山水之乐(醉景)风俗:滁人游太守宴众宾欢 太守醉宴游之乐(醉人)心情:禽鸟乐人之乐乐其乐与民同乐(醉情)可取之处重视朗读,有利于培养学生的文言语感,并通过节奏划分引导学生理解文意,突破了仅按注释疏通文义的桎梏,有利于引导学生自主思考;不单纯关注“直译”原则,同时培养学生的“意译”能力,引导学生关注文言文的美感,在一定程度上有助于培养学生的核心素养。不足之处文章难度相对较高,基础能力低的学生难以适应该教学。会员免费下载
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。