`
jianchen
  • 浏览: 342885 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java基础复习(12)--类型转换,异常概念

阅读更多

一个对象只能有一种确切类型

虚方法调用--后期绑定

instance判断变量的类型

 

public boolean equals(Object o){
     if(o instanceof Bird){
         Bird bird = (Bird)o;
         //调用 Bird的方法
         bird.fly();
     }
}
 



所谓造型就是java对象间的类型转换
java的对象造型可以分为两种情况:
--自动造型
--强制造型

在造型前可以使用instanceof 运算符测试一个对象的类型
o instanceof SuperMan
o instanceof Man
对象的造型只用在有继承关系的对象之间

抽象类可以有构造器,既可以有抽象方法,也可以有实现的方法,接口除了抽象方法,没有其

他方法,接口可以继承多个接口,抽象类只能继承一个父类

接口较灵活,应多用接口,少用抽象类

能够进行相互转型的类或对象必须位于同一棵继承树上。编译器会检查转型的合理性。

 

public class Animal{
protected int legs;
protected Animal(int legs){
this.legs = legs;
}
}

public class Spider extends Animal{
  public Spider(){
      super(8);//由于父类未提供默认的构造函数,所以必须调用父类的有参构造器
  }
}
 



多态的实现条件:1:有继承;2:有重写;3:父类引用指向子类对象
调用构造函数必须是构造器的第一条语句,在普通方法中,不能调用构造器

内部类
允许一个类的定义出现在另一个类中,将处于另一个类中的“寄生类”称为“内部类”,也称为“类属类“

内部类其实看成是外部类的一个属性。

异常:
不要指望你的程序永远不会出错
java程序运行过程中所发生的异常事件可分为两类:
--错误:jvm系统内部错误,资源耗尽的呢个严重情况
--异常:其他因编程错误或偶然的外在因素导致的一般性问题,例如:
        对负数开平方根
        空指针访问
        试图读取不存在的文件
        网络连接中断

 


java中除以零:
1/0   -1/0     0/0 均产生异常;

1.0/0   -1.0/0 0.0/0 分别为Infinity -Infinity   NaN

1/0.0   -1/0.0 0/0.0 分别为Infinity -Infinity   NaN

1.0/0.0 -1.0/0.0 0.0/0.0 分别为Infinity -Infinity   NaN

可见,当为除零时两个都是整数时会发生异常,有一个是double时分别为Infinity -Infinity   NaN

可以用类似语句来检测无穷大 if (Double.isInfinite(e)) System.out.println("检测到无穷大");

  double c = 1.0, d = 0;
       if(Double.isInfinite(c / d))
       System.out.println("infinity");
 

 

分享到:
评论

相关推荐

    java基础f复习

    ### Java基础复习知识点 #### 一、Java简介 1. **Java语言起源**:Java语言由Sun Microsystems公司在1991年开始研发,并于1995年正式发布。其最初的目标是为了开发一种能够用于家用电器的编程语言。随着时间的发展...

    Java详细复习提纲

    复习Java,首先需要理解其基本概念和技术要点。 一、Java基础知识 1. Java语言的特点: - 跨平台性:Java代码通过JVM(Java虚拟机)实现“一次编写,到处运行”。 - 面向对象:Java支持类、对象、封装、继承、...

    Java 基础核心总结-副本

    这份"Java基础核心总结_副本"的资料,很可能是对Java语言基础知识的全面梳理,旨在帮助学习者或面试者巩固和复习Java的核心概念。下面将根据标题和描述,结合常见的Java基础知识,来展开详细讲解。 一、基础语法 ...

    Java基础尚硅谷宋红康学习笔记

    2. **泛型**:泛型提供了一种在编译时检查类型安全的方法,允许在类、接口和方法中使用类型参数,减少强制类型转换。 3. **枚举**:枚举是Java中的一种特殊类,用于定义一组固定的常量,提高了代码的可读性和安全性...

    JAVA基础复习资料

    这份“JAVA基础复习资料”涵盖了初学者需要掌握的核心概念,也是经验丰富的开发者回顾基础的宝贵资源。下面,我们将深入探讨这10个章节的主要知识点。 1. **第一章:Java简介** Java的历史、设计哲学以及其在软件...

    Java程序设计--复习要点.doc

    本篇复习要点主要涵盖了Java语言的基础知识,包括其特点、运行机制、程序开发流程、程序分类以及语言基础,如关键字、数据类型、运算符、语句结构等。 1. **Java语言特点**: - **简单**:Java设计时考虑了C++的...

    Java基础知识总结 - 超详细篇收藏.zip

    这份“Java基础知识总结 - 超详细篇收藏”压缩包包含了关于Java编程的基础知识,是学习和复习Java语言的理想资源。以下是对其中可能涵盖的知识点的详细解释: 1. **Java环境搭建**:学习Java的第一步是安装JDK...

    Java复习提纲-2009-5.doc

    总的来说,Java学习涉及广泛的语法和概念,包括但不限于基本语法、面向对象编程、类和对象、继承、多态、异常处理、集合框架、输入/输出流以及Java API的使用。JavaScript虽然在标签中提及,但根据文档内容,这里...

    Java SE 复习资料

    9. **泛型**:泛型是Java 5引入的新特性,用于增强类型安全,减少类型转换,并允许编译器进行更严格的检查。理解和运用泛型,可以编写出更清晰、更安全的代码。 10. **枚举与注解**:枚举提供了一种安全的方式来...

    硅谷java基础每日复习eDiary

    在“硅谷java基础每日复习eDiary”这个资源中,我们涵盖了Java编程语言的基础和高级概念,这将有助于深入理解并提升Java编程技能。以下是基于描述中提到的两个文件——"Java基础每日复习笔记-JavaSE基础阶段.edf"和...

    Java复习资料

    这份"Java复习资料"包含了从第一章到第十章的详细学习内容,覆盖了Java语言的基础到高级特性,对于准备Java考试或者提升编程技能的学员来说非常有价值。 1. **第一章:Java简介** - Java的历史和发展 - Java的...

    java_复习题库java_复习题库

    1. **基础语法**:Java的基础包括变量、数据类型(如整型、浮点型、字符型和布尔型)、运算符、流程控制(if-else、switch、for、while循环)、数组和字符串。 2. **面向对象**:Java是纯面向对象的语言,涵盖类、...

    Java编程基础(2011-2012学年第一学期)复习提纲.doc

    ### Java编程基础知识点详解 #### 第一章 Java 语言概述 **1. Java 平台的工作机制** Java 是一种能够跨平台运行的语言。其工作机制基于“编写一次,到处运行”的理念。具体而言,Java 源代码文件(.java 文件)...

    java学习笔记-----给java初学者

    这份笔记涵盖了从基础概念到高级特性的全面内容,是学习和复习Java知识的理想工具。 1. **Java简介** Java是一种跨平台、面向对象的编程语言,由Sun Microsystems(现为Oracle公司)于1995年推出。它的“一次编写...

    JAVA书本复习题答案整合

    1. **Java基础知识**:复习题可能涵盖了Java的基础语法,如变量、数据类型、运算符、控制结构(if-else、switch、for、while等)、方法的定义和调用、类与对象的概念、封装、继承和多态等。答案解析能帮助你快速校验...

    JAVA期末复习知识点整理(一).doc

    掌握这些基本概念和规则是编写有效Java代码的基础。在实际编程中,还需要理解类的继承、多态、接口、异常处理、集合框架等更高级的主题。通过不断练习和项目实践,可以进一步提升Java编程技能。

    Java秋招复习资料 interview-notebook.pdf

    ### Java秋招复习资料——操作系统基础 #### 一、操作系统基本特征 1. **并发**:并发是指在宏观上能够同时运行多个程序的能力。而并行则是指在同一时刻能够执行多个指令,通常需要硬件的支持,比如多核心处理器或...

    Java基础知识点复习资料

    这份"Java基础知识点复习资料"涵盖了Java学习的核心概念,旨在帮助开发者巩固基础,提升技能。下面将对其中可能涉及的重要知识点进行详尽的阐述。 1. **Java语法基础** - **数据类型**:Java分为基本数据类型(如...

    思维导图-Java基础

    以上是Java基础学习的主要内容,通过思维导图的方式,我们可以清晰地看到各个知识点之间的关系,方便我们进行有条理的学习和复习。在实际学习过程中,建议结合实例操作,加深对每个概念的理解,并逐步提升编程能力。

    java复习题目

    ### Java复习知识点详解 #### 第一章:Java基础概念 - **Java语言的执行方式**: - Java是一种编译型语言,同时也是一种解释型语言。首先,源代码需要通过编译器转换成字节码(.class文件),然后由Java虚拟机...

Global site tag (gtag.js) - Google Analytics