抽象类、接口和内部类-JavaCore.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
抽象类 抽象方法:java 中可以定义一些不含方法体的方法,它的方法体的实现交给该类的子类根据自己的情况去实现。 抽象类:包含抽象方法的类叫抽象类。一个抽象类可以有一个或多个抽象方法。 抽象类的定义规则 抽象类必须使用abstract修饰符来定义,抽象方法也必须用abstract来修饰。 抽象类不能被实例化,不能用new关键字去产生对象。 抽象方法只能声明,不能实现。 含有抽象方法的类必须被声明为抽象类,抽象类的子类必须覆盖所有的抽象方法后才能被实例化,否则这个子类还是个抽象类。 抽象方法的写法 Abstract 返回值类型 抽象方法(参数列表) 例子: abstract class A { abstract int aa(int x,int y); } 抽象类的写法 abstract class Person{ private String; public abstract String getDescription(); public String getName(){ return name; } } 抽象类的使用 class Student extends Person{ private String major; pulbic Student(String n,String m){ super(n); major = m; } public String getDescription(){ return “a student majoring” + major; } } 接口 接口就是方法定义和常量值的集合。 [public] interface interfaceName [extends listOfSuperInterface] { ……//常量定义和方法定义 } 接口特征 接口是用来实现类间多重继承功能的结构. 接口不能实例化,即不能用new运算符创建对象。 一个类通过使用关键字implements声明自己实现一个或多个接口。 在类体中可以使用接口中定义的常量,而且必须实现接口中定义的所有方法 接口中的方法是自动公有的,在实现接口时必须把方法声明为public 。接口中的方法都是抽象的。 接口实现 用implements子句来表示一个类使用某个接口。 一个类可以实现多个接口,在implements子句中用逗号分隔。 接口实现 定义一个新接口,用extends 关键字去继承一个已有的接口。 也可以定义一个抽象类,用implements关键字去实现一个接口中定义的部分方法。 接口实现 一个类可以在继承一个父类的同时,实现一个或多个接口。 extends关键字必须位于implements关键字之前 一个类实现多个接口 接口中定义的常量 接口里的变量默认是public static final标识的,即接口里的变量是全局静态常量 抽象类和接口的区别和联系 一个类可以实现多个接口,?而一个类只能继承一个抽象类。 接口只定义方法,实现一个接口就是要实现接口的所有方法。而抽象类可以实现部分方法。 多个无关的类可以实现同一个接口,一个类可以实现多个无关的接口 内部类(nested classes) 定义:在一个类内部定义类 内部类的写法:class 类名{ } 它可以直接访问和引用他的外部类的所有变量和方法,与外部类相比,内部类可以声明为private或protected. 类中定义的内部类 一个内部类可以访问它的外部类,但是反过来不成立,内部类的成员只有在内部类的范围之内是可知,并不能被外部类使用。 示例:外部类访问内部类 类中定义的内部类 用static 修饰一个内部类时,这个类相当于是一个外部定义的类,所以static的内部类中可声明static成员 非static内部类中的成员不能声明为static static内部类不能使用外部类的非static成员变量 示例:static内部类 类中定义的内部类 函数的局部变量(形参也是局部变量),内部类的成员变量,外部类的成员变量重名,用以下方式来明确指定我们真正要访问的变量。 内部类如何被外部类引用 内部类可以通过创建对象从外部类之外被调用,只要将内部类声明为public 方法中定义的内部类 内部类并非只能在类里定义,也可以在几个程序块的范围之内定义内部类。例如在方法或for循环体内部,均可以. 在方法中定义的内部类只能访问方法中的final类型的局部变量。 示例:方法中的内部类 匿名内部类 只需要为局部内部类建立一个对象,不必为该类指定一个名字。 示例:匿名内部类 L o g o 标题 抽象类、接口和内部类

文档评论(0)

岁月如歌777 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档