本章介紹Java程式的基本組成部分,體會到Java中幾乎都是物件。
一切都是物件
目錄:
-
#2.1 用引用操縱物件
#2.2 必須由你建立所有物件
2.3 永遠不需要銷毀物件
#2.4 建立新的資料型別:類別
2.5 方法、參數與傳回值
#2.6 建構一個Java程式
2.7 你的第一個Java程式
#2.8 註解與嵌入式文件
2.9 編碼風格
#2.1 用引用操縱物件
一切都看作對象,操縱的標識符實際上是對象的一個“引用”,遙控器(引用)操縱電視機(對象),想調控電視,只需通過遙控器,且遙控器是獨立存在的。
######2.2 必須由你建立所有物件################一旦建立了一個引用,就希望它能與一個新的物件相關聯,通常用new操作符來實現這一目的。 #########String s = new String("Jiancheng");####
五个不同的地方可以存储数据:
寄存器:位于CPU内部,寄存器的数量极其有限,所以寄存器根据需求进行分配,速度最快。
堆栈:位于通用RAM(随机访问寄存器)中,Java编译器必须知道存储在堆栈内所有数据的大小和生命周期,“堆栈指针”向下移动则分配新内存,向上移动则释放内存,速度仅次于寄存器,基本数据类型和引用存放在此。
堆:位于RAM区,用于存放所有Java对象,编译器不用知道数据大小和生命周期.
常量存储:常量值通常直接存放在程序代码内部。
非RAM存储:完全存活在程序之外,不受程序的任何控制,例子是流对象和持久化对象,在流对象中,对象转换成字节流,通常被发送到另一台机器。在"持久化"对象中,对象被存放于硬盘上,即使程序终止,它们仍可以保持自己的状态。
9种基本类型:
boolean类型所占内存储空间的大小没有明确指定,仅定义为能够取字面值true或false。
高精度数字:
BigInteger:支持任意精度的整数
BigDecimal:支持任意精度的定点数
操作与对基本类型所能执行的操作相似,但必须以方法调用方式取代运算符方式来实现。
Java中的数组:
数组会被初始化,而且不能在它的范围之外被访问。这种范围检查,是以每个数组上少量的内存开销及运行时的下标检查为代价(换来安全性和效率)。
2.3 永远不需要销毁对象
作用域:
------------------------------------------------------------------
对象的作用域:
Java的作用和基本类型差别很大,new创建一个Java对象后,它可以存活于作用域之外。只要你需要这个对象,就会一直保留下去,直到垃圾回收器辨别到该对象不会再被引用并释放该对象的内存空间,这样就消除了内存泄漏的问题。
2.4 创建新的数据类型:类
类决定了某一对象的外观与行为,确定了对象的类型。
基本成员默认值:
当变量作为类的成员使用时,Java才确保给定其默认值,来确保基本类型成员变量得到初始化(初始值可能不是你想要的,最好自己初始化)。注意默认初始化的方法不适用于非某个类的字段变量,忘记初始化,Java会在编译时给你返回一个错误。
2.6 构建一个Java程序
static关键字:
下面两种情况需要使用static
只想为某特定域分配单一存储空间,而不去考虑究竟要创建多少对象。
某个方法不与包含它的类的任何对象关联在一起,就是没有创建对象,也能够调用这个方法。
class StatiTest{ static i = 47; //可以直接StatiTest.i这样调用 }
StatiTest st1 = new StatiTest();
StatiTest st2 = new StatiTest();
#其中st1.i和st2.i指向同一儲存空間,因此他們具有相同的值。
static作用於某個方法,差別在於用法在不創建任何物件的前提下就可以呼叫它,類別.方法()。
2.9 編碼風格
駝峰風格:
類,每個單字的首字母採用大寫
#方法、欄位及物件等,第一個單字的首字母採用小寫,其餘首字母大寫
總結:
本章容易理解,對Java語言及它的一些基本思想有一個總體的認識,大多數知識點也接觸過,但容易把細節的地方忘記,多看無礙。
以上是Java的程式設計思想總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于PriorityQueue优先级队列的相关知识,Java集合框架中提供了PriorityQueue和PriorityBlockingQueue两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于java锁的相关问题,包括了独占锁、悲观锁、乐观锁、共享锁等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于多线程的相关问题,包括了线程安装、线程加锁与线程不安全的原因、线程安全的标准类等等内容,希望对大家有帮助。

本篇文章给大家带来了关于Java的相关知识,其中主要介绍了关于关键字中this和super的相关问题,以及他们的一些区别,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于枚举的相关问题,包括了枚举的基本操作、集合类对枚举的支持等等内容,下面一起来看一下,希望对大家有帮助。

封装是一种信息隐藏技术,是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法;封装可以被认为是一个保护屏障,防止指定类的代码和数据被外部类定义的代码随机访问。封装可以通过关键字private,protected和public实现。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于设计模式的相关问题,主要将装饰器模式的相关内容,指在不改变现有对象结构的情况下,动态地给该对象增加一些职责的模式,希望对大家有帮助。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版