(1).instanceof
obj instanceof ClassName/Interface
用于判断一个对象否是属于某个类或者接口类型
(2).子类赋值给直接父类或者间接父类类型,会自动进行类型转换;而从父类赋值给直接或者间接子类,需要进行强制类型转换.
(3)."+"操作符中有一个操作元是String类型,则另一个操作元可以是任何类型(包括基本类型和自定义类型),另一个操作将被转换成字符串,如果另一个操作元为引用类型,就会调用自己的toString()函数.
(4).继承是重用代码的重要手段.
方法覆盖:在父类与子类中,方法签名完全相同的情况下.子类中被覆盖的方法的访问权限不能缩小,而且不能抛出父类中没有抛出中的Exception.
方法重载:同一个类中,方法名相同参数列表不同(不包括函数返回值)
(5).super/this的使用
在子类中显式调用父类的构造函数,super()(需要放在子类构造函数的第一条语句上)
在子类中定义了与父类同名的成员变量时,访问父类的此成员变量使用super.name
在子类中覆盖了父类的方法,访问父类的此成员方法使用super.funName()
局部变量与成员变量同名,访问成员变量使用this.name
在同一个类中定义了多个构造函数,在一个构造函数调用另一个构造函数使用this()(需要放在构造函数的第一条语句)
(6).new关键字作用
为对象分配内存空间,将对象的成员变量自动初始化为默认值,如果成员变量在声明时就被显式的初始化,那么就给变量赋初始值;调用构造函数,进行初始化;返回对象引用
(7).成员变量初始化:创建对象时,成员变量会被默认初始化;
局部变量初始化:声明之后,JVM不会自动给它初始化,因此对于局部变量必须先声明初始化以后,才能够正 常的使用。
静态变量初始化:(包括static block)在JVM加载类时完成初始化工作
(8).关键字abstract
abstract修饰的类是抽象类不能够被实例化,包含一个或者多个abstract方法(没有方法体),只能被继承。
static-abstract是不能再一起用来修饰的。
(9).final关键字
用final修饰类,表示此类不能被继承,比如说String就是这样的一个类。
用final修饰方法,表示此方法不能在子类中被覆盖。
用final修饰成员变量,表示常量,只能给它赋值一次。(经常定义常量为public static final String name,因为常量不变,只需要一份就可以了,那么可以加上static)。
用final修饰变量时,一定要在声明时就初始化。
(10).对象序列化是一种使得Java对象能够被存储和被传输的一种机制,可以直接把Java对象
作为可存储,可传输的对象写入文件,在网络上传输。对于开发人员来说,避免了存取字节等低级操作。
ObjectOutputStream.writeObject();
ObjectInputStream.readObject();
(11).Java中的异常机制
一.异常分类
Error:由Java虚拟机生成并抛出,包括动态链接失败、虚拟机错误等,Java程序不做处理。
Runtime Exception:Java虚拟机在运行时生成的例外,如被0除等系统错误、数组下标超范围等,其产生比较频繁,处理麻烦,对程序可读性和运行效率影响太大。因此由系统检测, 用户可不做处理,系统将它们交给缺省的异常处理程序(当然,必要时用户可对其处理)。
Exception:一般程序中可预知的问题,其产生的例外可能会带来意想不到的结果,因此Java编译器要求Java程序必须捕获或声明所有的非运行时异常。
throw:用户自己产生异常
二.通常在finally语句中可以进行资源的清除工作,如关闭打开的文件、删除临时文件等。
三.在产生异常的方法名后面加上要抛出(throws)的异常的列表
void compute(int x)throws ArithmeticException {…}
四.Java 中可用于处理异常的两种方式:
自行处理:可能引发异常的语句封入在try块内,而处理异常的相应语句则封入在catch块内。
回避异常:在方法声明中包含throws子句,通知潜在调用者,如果发生了异常,必须由调用者处理。
(12)关于finalize()方法(在Object)
finalize()方法
有时当撤消一个对象时,需要完成一些操作.例如,如果一个对象正在处理的是非Java资源,如文件句柄或window字符字体,这时要确认在一个对象被撤消以前要保证这些资源被释放.为处理这样的情况,Java提供了被称为收尾(finalization)的机制.可用于在控制返回操作系统前完成清除过程.
实现这种机制非常简单,只要为类定义finalize()方法即可. Java回收该类的一个对象时,就会调用这个方法. 在finalize()方法中,要指定一个对象被撤消前必须执行的操作. 垃圾回收周期性地运行,检查对象不再被运行状态引用或间接地通过其他对象引用. 就在对象被释放之前, Java运行系统调用该对象的finalize()方法.
其语法为:Protected void finalize() throws Throwable(注意: 引用不能进行垃圾收集,只有对象才能进行垃圾收集.)
在Java中,对象的撤消和其finalize()方法的调用之间几乎没有联系.对象执行完毕,并不显示撤消对象.而是在没有任何引用的时候,将对象标志为不再使用.因此,程序员无法确切的知道何时何地调用finalize().甚至执行gc()调用垃圾收集器时,也不能保证立即执行finalize()方法.
分享到:
相关推荐
Java基础知识1,Java基础知识1
java基础知识,帮助初学者更快更好地掌握java。ppt内容具体易懂,希望对刚接触java的初学者有所帮助。
Java是一种广泛使用的面向对象的编程语言,其基础知识涵盖了多个方面,包括语法、面向对象特性、异常处理、多线程...以上只是Java基础知识的一个概述,每个话题都值得深入探讨和实践,不断学习和总结是提升技能的关键。
Java基础知识整理 Java是一种广泛应用于软件开发的编程语言,拥有丰富的基础知识体系。本文将对Java基础知识进行系统性的整理和总结,涵盖面向对象、访问控制权限、Final关键字、内部类、集合等多个方面的知识点。 ...
Java 基础知识大全 本资源摘要信息是 Java 基础知识大全的总结,涵盖了 Java 语言的基本概念、特点、历史发展等方面的知识点。以下是本资源摘要信息的详细内容: 一、 Java 语言的特点 * 面向对象:Java 语言是...
JAVA基础知识总结 JAVA基础知识总结 JAVA基础知识总结
Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础...
Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案...
java基础知识的培训ppt,对于java初学者来说可以有一些作用。
### Java基础知识精炼 #### 一、Java概述与发展历程 Java是一种高级编程语言,由Sun Microsystems公司的James Gosling等人于1991年开始研发,原名为Oak,旨在控制嵌入式设备如有线电视交换盒和PDA。1994年正式更名...
在“java基础知识应用”这个主题中,我们主要探讨的是Java语言的基础概念及其在实际开发中的应用,特别是与数据库交互的部分。 一、Java语言基础 1. 类与对象:Java基于面向对象的编程理念,所有程序都是由类和对象...
java基础知识
自己在网上找的相对好一点的java复习资料,留个纪念 。详细讲述了Java课程的知识点
"Java基础知识梳理" Java 是一种广泛使用的编程语言,适合初学者对 Java 相关知识的总结。下面是 Java 基础知识的梳理: 一、Java 开发环境 * JDK(Java Development Kit):可以开发编译与运行 JAVA 程序的工具...
这篇“Java基础知识总结(经典)”涵盖了Java开发中的核心概念和重要知识点,旨在为初学者和有经验的开发者提供一个全面的回顾。以下是主要的学习点: 1. **Java环境配置**:在开始编程之前,必须安装Java ...
Java是一种广泛使用的面向对象的编程语言,...总的来说,Java基础知识的加强不仅涉及语言语法,还包括工具的熟练使用和新特性的理解和应用。通过深入理解并实践这些知识点,开发者能够编写出更高效、更安全的Java代码。
java基础知识点总结及面试问题java基础知识点总结及面试问题java基础知识点总结及面试java基础知识点总结及面试问题
Java基础知识总结涵盖了Java程序设计语言的核心概念和常用知识点。在详细学习和总结这些知识点之前,首先需要对Java有一个整体的认识。Java是一种面向对象的编程语言,它具有跨平台的特性,即“一次编写,到处运行”...