Java面向对象特性
1.继承(Inheritance)
继承是面向对象编程的核心机制之一,其作用是在已有类型基础之上进行扩充或改造,得到新的数据类型,以满足新的需要.
语法格式如下:
[<修饰符>] class <类名> [extends<父类名>]{
[<属性声明>]
[<构造方法声明>]
[<方法声明>]
}
2.类之间的关系
1)依赖关系(Dependency):指一个类的方法中使用到了另一个类的对象,此时我们称前者依赖后者.("use-a")的关系
2)聚合关系(Aggregation):指一个类的对象包含(通过属性引用)了另一个类的对象.("has-a")的关系
3)泛化关系(Generalization):表示的是类之间的继承关系(还包括类与接口之间的实现关系以及接口之间的继承关系).("is-a")关系
3.访问控制(access control)
修饰类一般只有:public,default
修饰属性和方法有:public, protected, default,private
4.方法重写(overwrite)
在子类继承父类时,子类可以重写父类的方法.方法重写必须遵守下面的原则:
1)重写方法必须和被重写方法具有相同的方法名称,参数列表和返回值类型
2)重写方法不能使用比被重写方法更严格的访问权限
3)重写方法不允许声明抛出比被重写方法范围更大的异常类型.(可以不抛出异常,或者只能抛出相同的异常)
5.super关键字
子类继承父类时,在子类中可以使用super来引用父类中的成分.在构造方法中使用super()语句,必须位于子类构造方法的第一行.
格式有:
super.<属性名>:访问父类中的属性
super.<方法名>(<实参列表>):访问父类中的成员方法
super(<实参列表>):在子类构造方法中调用父类的构造方法
6.多态(Polymorphism)
多态:把子类对象可以替代父类对象使用
instanceof运算符:用于检测一个对象的真正类型,格式:
<变量名>instanceof<类型>
JDK5.0允许重写方法时修改其返回值的类型,但必须是父类方法返回值类型的子类或实现类类型.
7.方法重载(overload)
在一个类中存在多个同名方法的情况下,使用方法重载.
this(<实参列表>):只能出现在构造方法中,且this()语句如果出现必须位于方法体中代码的第一行.用来调用同一类中的其他重载构造方法.
8.Java对象构造和初始化
语法规则如下:
1)在子类的构造方法中可使用super语句调用父类的构造方法,格式:super(<实参列表>)
2)如果子类的构造方法中既没有显式地调用父类构造方法,也没有使用this关键字调用同一个类的其他重载构造方法,则系统会默认调用父类无参数的构造方法,格式:super()
3)如果子类构造方法中既未显式调用父类构造方法,而父类中又没有无参的构造方法,则编译出错.
Java对象构造和初始化的处理细节如下:
第一阶段:为新建对象的实例变量分配存储空间并进行默认初始化
第二阶段:按下述步骤继续初始化实例变量
1)绑定构造方法参数;
2)如有this()调用,则调用相应的重载构造方法,然后跳转到步骤5;
3)显式或隐式追溯调用父类的构造方法(Object类除外);
4)进行实例变量的显式初始化操作
5)执行当前构造方法的方法体中其余的语句
9.抽象类(abstract class)
抽象方法(abstract method):只给出方法头(包括方法名,形式参数列表,返回值类型及修饰符),而不必给出方法体,即方法实现的细节.格式如下:
[<修饰符>]abstract <返回值类型> <方法名> ([<参数列表>])
注意:
1)包含抽象方法的类必须声明为抽象类,但不包含任何抽象方法的java类也可以声明为抽象类
2)子类可以不全部实现抽象父类,但子类也必须声明为抽象类
3)父类不是抽象类,子类可以添加抽象方法,成为抽象类
4)抽象类可以声明static属性和方法.
10.接口(interface)
格式:
[<modifier>] class <name> [extends<superclass>] [implements<interface>[,<interface>]*] {
declarations *
}
11.嵌套类(Nested Class)
嵌套类分为:使用static修饰的嵌套类称为静态嵌套类(Static Nested Class),非static的嵌套类称为内部类(Inner Class),内部类可以分为:
1)普通的内部类:在Java类中,方法或语句块的外部定义的非static类
2)局部内部类:也称局部类(Local Class),定义在方法或语句块中的类
3)匿名内部类:也称匿名类(Anonymous Class),定义在方法或语句块中,该类没有名字,只能在其所在之处使用一次.
12.断言(assert)
断言机制允许Java开发者在代码中加入一些检查语句,主要用于程序调试目的.功能:在用户定义的boolean表达式(判定条件)结果为false时抛出一个Error对象,其类型为AssertionError.
语法格式:
assert <boolean 表达式>;
执行到assert语句时,如果其后的boolean类型表达式值为false,则程序将抛出AssertionError.
assert<boolean 表达式>:<表达式2>;
断言失败时,系统会自动将<表达式2>的值传递给新创建的AssertionError对象,进而将其转换为一个消息字符串保存起来.
分享到:
相关推荐
3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3.java面向对象特征.zip3....
Java面向对象特性是Java语言的核心特性,它包括对象与类、封装性、继承性和多态性四个主要方面。 1. 对象与类: - 对象是程序中的基本单位,代表现实世界中的实体,拥有状态(变量)、行为(方法)和标识(对象名...
二、Java面向对象特性详解 1. 抽象:抽象是将共同特征抽取出来形成类的过程,Java通过抽象类和接口实现抽象。 2. 构造器:构造器用于初始化新创建的对象,Java中的构造器与类同名且无返回值。 3. 访问控制修饰符:...
2. Java面向对象特性: - 异常处理:Java提供了异常处理机制,通过try-catch-finally语句块捕获和处理运行时错误,提高程序的健壮性。 - 接口(Interface):接口是一种完全抽象的类,仅包含常量和抽象方法。它...
java语言越来越成为计算机语言的主流,在java中面向对象的特征
本教程涵盖了这一关键概念,旨在帮助学习者深入理解和掌握Java的面向对象特性。以下是相关知识点的详细说明: 1. **面向对象编程基础**:面向对象编程(OOP)是一种编程范式,它基于“对象”的概念,强调数据和操作...
Java面向对象编程PDF 在这篇文章中,我们将对Java面向对象编程的基础知识进行总结和解释。面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为...
本资源包含了该课程所有章节的课后习题答案,帮助学习者深入理解Java语言的面向对象特性。 1. **类与对象**:Java中的基本构建块是类,它代表了现实世界中的事物或概念。对象则是类的实例,具有类定义的属性和行为...
Java语言以其强大的面向对象特性、跨平台兼容性以及丰富的类库,成为了开发各种类型应用程序的首选工具。在这个话题中,我们将深入探讨Java语言的基础,面向对象编程的概念,以及如何运用这些知识进行实际应用的开发...
Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程(OOP)的概念,是一种强大的编程范式。在Java中,OOP的核心概念包括类、对象、封装、继承、多态等。这本书"Java面向对象程序设计"由耿祥义和...
Java面向对象程序设计是计算机科学中的一个重要...以上是Java面向对象编程的关键知识点,涵盖了语言基础、程序设计、面向对象特性以及实际编程练习。学习这些内容有助于深入理解Java编程,并能应用于实际项目开发中。
Java是一种广泛使用的编程语言,以其强大的面向对象特性而闻名。面向对象编程(Object-Oriented Programming,OOP)是Java的核心理念,它使得程序设计更加模块化、可维护且易于扩展。下面,我们将深入探讨Java的面向...
4_Java面向对象特性.ppt
资源描述:Java面向对象知识点的思维导图 内容概要: 这个资源是一个Java面向对象知识点的思维导图,它涵盖了Java中面向对象编程的核心概念和重要知识点。导图中包含了类、对象、继承、多态、封装等基本概念,同时...
学习Java面向对象特性对于理解和应用OOP原则至关重要,这对于任何希望深入Java编程或软件开发的人来说都是必修的课程。通过熟练掌握这些概念,开发者能够创建出更加高效、结构化的代码,同时也能更好地适应未来的...
Java面向对象基础是Java编程语言的核心概念之一,它在软件开发中扮演着至关重要的角色。本课件主要针对Java的基础部分进行讲解...在实际项目中,Java面向对象特性与数组的灵活运用能帮助你构建高效、可扩展的软件系统。
2. **面向对象编程**:Java3.ppt至Java5.ppt可能深入讨论了类与对象的创建、继承、多态性以及接口等核心面向对象特性。这部分内容对于理解Java的面向对象设计至关重要。 3. **高级Java**:Java6.ppt至Java8.ppt可能...
Java面向对象课程设计是计算机科学领域中一个重要的实践环节,旨在帮助学生深入理解面向对象编程的概念和技巧。在这个课程设计中,学生通常会被要求完成一个实际的项目,使用Java语言来实现,同时需要提交详细的报告...
本章节的源代码着重于讲解和实践Java中的面向对象特性,包括类、对象、封装、继承、多态等关键概念。 首先,类是面向对象编程的基础。类定义了一组属性和行为,这些属性描述了类的特征,而行为则表示类可以执行的...