1、 對象的初始化
(1) 非靜態對象的初始化
在創建對象時,對象所在類的所有數據成員會首先進行初始化。
基本類型:int型,初始化為0。
如果為對象:這些對象會按順序初始化。
※在所有類成員初始化完成之後,才調用本類的構造方法創建對象。
構造方法的作用就是初始化。
(2) 靜態對象的初始化
程序中主類的靜態變量會在main方法執行前初始化。
不僅第一次創建對象時,類中的所有靜態變量都初始化,並且第一次訪問某類(註意此時
未創建此類對象)的靜態對象時,所有的靜態變量也要按它們在類中的順序初始化。
2、 繼承時,對象的初始化過程
(1) 主類的超類由高到低按順序初始化靜態成員,無論靜態成員是否為private。
(2) 主類靜態成員的初始化。
(3) 主類的超類由高到低進行默認構造方法的調用。註意,在調用每一個超類的默認構造
方法前,先進行對此超類進行非靜態對象的初始化。
(4) 主類非靜態成員的初始化。
(5) 調用主類的構造方法。
3、 關於構造方法
(1) 類可以沒有構造方法,但如果有多個構造方法,就應該要有默認的構造方法,否則在繼承此類時,需要在子類中顯式調用父類的某一個非默認的構造方法了。
(2) 在一個構造方法中,只能調用一次其他的構造方法,並且調用構造方法的語句必須是
第一條語句。
4、 有關public、private和protected
(1) 無public修飾的類,可以被其他類訪問的條件是:a.兩個類在同一文件中,b.兩個類
在同一文件夾中,c.兩個類在同一軟件包中。
(2) protected:繼承類和同一軟件包的類可訪問。
(3) 如果構造方法為private,那麽在其他類中不能創建該類的對象。
5、 抽象類
(1) 抽象類不能創建對象。
(2) 如果一個類中一個方法為抽象方法,則這個類必須為abstract抽象類。
(3) 繼承抽象類的類在類中必須實現抽象類中的抽象方法。
(4) 抽象類中可以有抽象方法,也可有非抽象方法。抽象方法不能為private。
(5) 間接繼承抽象類的類可以不給出抽象方法的定義。
6、 final關鍵字
(1) 一個對象是常量,不代表不能轉變對象的成員,仍可以其成員進行操作。
(2) 常量在使用前必須賦值,但除了在聲明的同時初始化外,就只能在構造方法中初始化
(3) final修飾的方法不能被重置(在子類中不能出現同名方法)。
(4) 如果聲明一個類為final,則所有的方法均為final,無論其是否被final修飾,但數據
成員可為final也可不是。
7、 接口interface (用implements來實現接口)
(1) 接口中的所有數據均為 static和final即靜態常量。盡管可以不用這兩個關鍵字修飾,但必須給常量賦初值。
(2) 接口中的方法均為public,在實現接口類中,實現方法必須可public關鍵字。
(3) 如果使用public來修飾接口,則接口必須與文件名相同。
8、 多重繼承
(1) 一個類繼承了一個類和接口,那麽必須將類寫在前面,接口寫在後面,接口之間用逗
號分隔。
(2) 接口之間可多重繼承,註意使用關鍵字extends。
(3) 一個類雖只實現了一個接口,但不僅要實現這個接口的所有方法,還要實現這個接口
繼承的接口的方法,接口中的所有方法均須在類中實現。
9、 接口的嵌入
(1) 接口嵌入類中,可以使用private修飾。此時,接口只能在所在的類中實現,其他類不
能訪問。
(2) 嵌入接口中的接口一定要為public。
10、類的嵌入
(1) 類可以嵌入另一個類中,但不能嵌入接口中。
(2) 在靜態方法或其他方法中,不能直接創建內部類對象,需通過手段來取得。
手段有兩種:
class A {
class B {}
B getB() {
B b = new B();
return b;
}
}
static void m() {
A a = new A();
A.B ab = a.getB(); // 或者是 A.B ab = a.new B();
}
(3) 一個類繼承了另一個類的內部類,因為超類是內部類,而內部類的構造方法不能自動
被調用,這樣就需要在子類的構造方法中明確的調用超類的構造方法。
接上例:
class C extends A.B {
C() {
new A().super(); // 這一句就實現了對內部類構造方法的調用。
}
}
構造方法也可這樣寫:
C(A a) {
a.super();
} // 使用這個構造方法創建對象,要寫成C c = new C(a); a是A的對象。
11、異常類
JAVA中除了RunTimeException 類,其他異常均須捕獲或拋出。
相关推荐
java基础知识总结--思维导图
1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。 2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。 3,配置环境变量:让java jdk\bin...
JAVA基础知识点-总结.doc
这份“Java基础知识总结 - 超详细篇收藏”压缩包包含了关于Java编程的基础知识,是学习和复习Java语言的理想资源。以下是对其中可能涵盖的知识点的详细解释: 1. **Java环境搭建**:学习Java的第一步是安装JDK...
JAVA基础知识总结 JAVA基础知识总结 JAVA基础知识总结
Java是一种广泛使用的面向对象的编程语言,其基础知识涵盖了多个方面,包括语法、面向对象特性、异常处理、多线程...以上只是Java基础知识的一个概述,每个话题都值得深入探讨和实践,不断学习和总结是提升技能的关键。
这篇“Java基础知识总结(经典)”涵盖了Java开发中的核心概念和重要知识点,旨在为初学者和有经验的开发者提供一个全面的回顾。以下是主要的学习点: 1. **Java环境配置**:在开始编程之前,必须安装Java ...
Java基础知识点总结 Java是一种广泛应用的编程语言,掌握Java基础知识点对于编程人员非常重要。本节将对Java基础知识点进行总结,涵盖变量、数据类型、运算符、控制流程、方法、数组、内部类、继承、多态、接口、...
2024版Java基础知识总结(超详细整理)2024版Java基础知识总结(超详细整理)2024版Java基础知识总结(超详细整理)2024版Java基础知识总结(超详细整理)2024版Java基础知识总结(超详细整理)2024版Java基础知识...
Java基础知识总结 一些的基础知识 适合初学者和回顾以前的知识
面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。...本资源主要分享了Java基础知识--集合的PPT课件+总结+代码,供大家学习交流~
java基础知识
### Java基础知识总结(绝对经典) #### 一、Java概述 - **起源与发展**:Java语言始于1991年Sun公司的James Gosling等人所开发的Oak语言,原计划用于控制嵌入式设备如有线电视交换盒和个人数字助理(PDA)。1994年...
java总结大全--包括所有java基础知识点.doc
Java 基础知识总结 Java 基础知识总结是 Java 程序员不可或缺的一部分,本总结将涵盖 Java 的基础知识,包括 Java 概述、Java 语法基础、变量、数据类型、运算符、控制语句、方法、数组、继承、多态、接口、异常、...
本人java工程师,2年经验 有必要总结下 java基础知识,花了1周时间总结的 适合有点java基础的人看 新手也可以看看 提高眼界 故拿出来共享 欢迎交流!!
自己在网上找的相对好一点的java复习资料,留个纪念 。详细讲述了Java课程的知识点
### Java基础知识总结 #### 一、Java概述 Java是由Sun Microsystems公司(现已被Oracle收购)在1991年由James Gosling领导的团队所开发的一种面向对象的编程语言。最初被命名为Oak,后因与互联网紧密相关的特性而...