導航:首頁 > 操作系統 > androidabstract

androidabstract

發布時間:2023-02-11 14:41:45

android中的context是什麼東西

Context,中文直譯為「上下文」,SDK中對其說明如下:
Interface to global information about an application environment. This is an abstract class whose implementation
is provided by the Android system. It allows access to application-specific resources and classes, as well as up-calls
for application-level operations such as launching activities, broadcasting and receiving intents, etc

從上可知一下三點,即:
1、它描述的是一個應用程序環境的信息,即上下文。
2、該類是一個抽象(abstract class)類,Android提供了該抽象類的具體實現類(後面我們會講到是ContextIml類)。
3、通過它我們可以獲取應用程序的資源和類,也包括一些應用級別操作,例如:啟動一個Activity,發送廣播,接受Intent信息等。

❷ android是什麼語言編寫的

Java,是由Sun
Microsystems公司於1995年5月推出的Java程序設計語言和Java平台的總稱。用Java實現的HotJava瀏覽器(支持Java
applet)顯示了Java的魅力:跨平台、動態的Web、Internet計算。從此,Java被廣泛接受並推動了Web的迅速發展,常用的瀏覽器現在均支持Java
applet。 Android以Java為編程語言,使介面到功能,都有層出不窮的變化,其中Activity等同於J2ME的MIDlet,一個
Activity
類(class)負責創建視窗(window),一個活動中的Activity就是在
foreground(前景)模式,背景運行的程序叫做Service。兩者之間通過由ServiceConnection和AIDL連結,達到復數程序同時運行的效果。如果運行中的
Activity
全部畫面被其他
Activity
取代時,該
Activity
便被停止(stopped),甚至被系統清除(kill)。
View等同於J2ME的Displayable,程序人員可以通過
View
類與「XML
layout」檔將UI放置在視窗上,Android
1.5的版本可以利用
View
打造出所謂的
Widgets,其實Widget只是View的一種,所以可以使用xml來設計layout,HTC的Android
Hero手機即含有大量的widget。至於ViewGroup
是各種layout
的基礎抽象類(abstract
class),ViewGroup之內還可以有ViewGroup。View的構造函數不需要再Activity中調用,但是Displayable的是必須的,在Activity
中,要通過findViewById()來從XML
中取得View,Android的View類的顯示很大程度上是從XML中讀取的。View
與事件(event)息息相關,兩者之間通過Listener
結合在一起,每一個View都可以注冊一個event
listener,例如:當View要處理用戶觸碰(touch)的事件時,就要向Android框架注冊View.OnClickListener。另外還有Image等同於J2ME的BitMap。

❸ android 介面和抽象的區別

抽象類:
含有abstract修飾符的class 即為抽象類,
abstract類不能創建實例對象,
含有abstract的方法的類必須定義為abstract class ,
abstract class 里的方法不必是抽象的,
抽象來中定義抽象方法必須放在具體子類中實現,所以,不能有抽象的構造方法或抽象的靜態方法,如果子類沒有實現抽象父類中的所有方法,那麼,子類也必須定義為抽象類。

介面:
介面(interface)可以說成是抽象類的特例。介面中的所有方法都必須是抽象的,介面中的方法定義默認為public abstract 。介面中的變數是全局常量,即public static final修飾的。

語法上的區別:
1,抽象類里可以有構造方法,而介面內不能有構造方法。
2,抽象類中可以有普通成員變數,而介面中不能有普通成員變數。
3,抽象類中可以包含非抽象的普通方法,而介面中所有的方法必須是抽象的,不能有非抽象的普通方法。
4,抽象類中的抽象方法的訪問類型可以是public ,protected和默認類型,但介面中的抽象方法只能是public類型的,並且默認即為public abstract類型。
5,抽象類中可以包含靜態方法,介面內不能包含靜態方法。
6,抽象類和介面中都可以包含靜態成員變數,抽象類中的靜態成員變數的訪問類型可以任意,但介面中定義的變數只能是public static類型,並且默認為public static類型。
7,一個類可以實現多個介面,但只能繼承一個抽象類。
再補充點兩者在應用上的區別:

❹ android 類 abstract前綴什麼意思

1、 這是一種特殊的命名規范。
2、對於抽象類,應該使用 Abstract 前綴。

舉手之勞,希望能幫到你。

❺ Android下Context,Activity,Application之間有什麼區別

我發現這個表超級有用的決定何時使用不同類型的上下文:

應用程序可以從這里開始一個活動,但它需要一個新的任務被創建。 這可能適合特定的用例,但是可以創建標准棧行為一般不建議在您的應用程序,或者一種不錯的做法。

這是合法的,但通貨膨脹將使用默認主題您正在運行的系統,而不是在應用程序中定義的。

允許如果接收者是null,用於獲取的當前值的廣播,在安卓4.2及以上。


外網譯文:

上下文對象是如此普遍,如此頻繁的傳遞,很容易創建一個情況你沒有意願。 載入資源,推出一個新的活動,獲得一個系統服務,內部文件路徑,所有需要創建視圖上下文(這是沒有開始的完整列表!)來完成這項任務。 我想做的就是為你提供一些見解上下文作品和一些技巧,這些技巧將(希望)允許您在應用程序中更有效地利用它。

上下文類型

並不是所有的上下文實例都是平等的。 根據Android應用程序組件上下文你可以訪問略有不同:

應用程序——是一個單例實例中運行您的應用程序的過程。 它可以通過訪問方法getApplication()從一個活動或服務getApplicationContext()從任何其他對象繼承上下文。 無論它如何訪問,你總是會收到相同的實例從內部流程。

活動/服務——繼承ContextWrapper實現相同的API,但是代理所有的方法調用一個隱藏的內部上下文上下文實例,也被稱為它的基地。 每當框架創建一個新的活動或服務實例,它還創建了一個新的ContextImpl實例做所有組件將包裝的重任。 每個活動或服務,及其相應的基礎背景,是獨一無二的每個實例。

BroadcastReceiver——不是一個上下文本身,而是通過一個框架上下文在onReceive()每次新的廣播事件出現的原因。 這個例子是一個ReceiverRestrictedContext有兩個主要功能殘疾;調用registerReceiver()和bindService()。 這兩個函數不允許從內部現有的BroadcastReceiver.onReceive()。 每次一個廣播接收器流程,上下文交給一個新實例。

內容提供者——也不是上下文但給出了一個創建時,可以通過訪問getContext()。 如果ContentProvider運行本地調用者(即同一應用程序的過程),那麼這個單會返回相同的應用程序。 然而,如果兩個單獨的進程,這將是一個新創建的實例代表包中運行的提供者。

保存引用

我們需要解決的第一個問題來自儲蓄的引用上下文在一個對象或類的實例的生命周期,超出你救了。 例如,創建一個自定義需要的單例上下文載入資源或訪問ContentProvider,並保存當前活動或服務的引用的單例。

壞的單例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

公共 類 CustomManager {

私人 靜態 CustomManagersInstance;

公共 靜態 CustomManagergetInstance(上下文上下文) {

如果 (sInstance = = 零) {

sInstance = 新 CustomManager(上下文);

}

返回 sInstance;

}

私人 上下文mContext;

私人 CustomManager(上下文上下文) {

mContext = 上下文;

}

}

這里的問題是我們不知道上下文來自,不安全持有對象的引用如果它最終成為一個活動或一個服務。 這是一個問題,因為單是由一個單一的靜態引用在封閉類。 這意味著我們的對象,和所有其他對象引用它,永遠不會被垃圾收集。 如果這上下文是一個活動,我們會有效地持有人質在內存中所有與它相關的觀點和其他潛在的大對象,創建一個泄漏。

為了防止這一點,我們修改單總是參考應用程序上下文:

更好的單例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

公共 類 CustomManager {

私人 靜態 CustomManagersInstance;

公共 靜態 CustomManagergetInstance(上下文上下文) {

如果 (sInstance = = 零) {

/ /總是通過在應用程序上下文

sInstance = 新 CustomManager(上下文。getApplicationContext());

}

返回 sInstance;

}

私人 上下文mContext;

私人 CustomManager(上下文上下文) {

mContext = 上下文;

}

}

現在我們並不重要上下文來自,因為參考我們是安全的。 應用程序上下文本身就是一個單,所以我們沒有泄露任何通過創建另一個靜態引用。 另一個很好的例子,這可以出現的地方保存一個引用上下文從正在運行的後台線程或等待處理程序。

那麼,為什麼我們不能總是只是引用應用程序上下文? 以中間人的方程,,,永遠不必擔心創造泄漏? 答案,我在引言中提到,是因為一個上下文不等於另一個。

上下文的能力

您可以安全地採取共同行動與給定上下文對象取決於最初是從哪裡來的。 下面是一個表的常見應用程序將接收的地方上下文,在每一種情況下是很有用的:


應用程序

活動

服務

內容提供者

BroadcastReceiver

顯示一個對話框 沒有 是的 沒有 沒有 沒有

開始一個活動 沒有1 是的 沒有1 沒有1 沒有1

布局的通貨膨脹 沒有2 是的 沒有2 沒有2 沒有2

啟動一個服務 是的 是的 是的 是的 是的

綁定到一個服務 是的 是的 是的 是的 沒有

發送一個廣播 是的 是的 是的 是的 是的

注冊BroadcastReceiver 是的 是的 是的 是的 沒有3

載入資源值 是的 是的 是的 是的 是的

應用程序可以從這里開始一個活動,但它需要一個新的任務被創建。 這可能適合特定的用例,但是可以創建標准棧行為一般不建議在您的應用程序,或者一種不錯的做法。

這是合法的,但通貨膨脹將使用默認主題您正在運行的系統,而不是在應用程序中定義的。

允許如果接收器零,用於獲取的當前值的廣播,在安卓4.2及以上。

用戶界面

從看著前面的表中可以看到,有很多功能的應用程序上下文是適合處理不當;他們與UI相關的工作。 事實上,只有實現裝備來處理所有與UI相關的任務活動,其他實例票價差不多在所有類別。

幸運的是,這三個動作是一個應用程序並沒有任何地方做一個活動的范圍之外,就像框架是故意這樣設計的。 試圖展示一個對話框創建應用程序上下文的引用,或者開始一個活動的應用程序上下文將拋出一個異常且應用程序崩潰…一個強大的指示器出事了。

不太明顯的問題是膨脹布局。 如果你讀過我的最後一塊布局的通貨膨脹,你已經知道它可能是一個有點神秘的過程和一些隱藏行為,使用正確的上下文與另一個的行為。 而框架不會抱怨,將返回一個完美的從一個視圖層次LayoutInflater創建應用程序上下文,主題和風格的應用程序將不考慮過程。 這是因為活動是唯一的上下文清單中定義的主題實際上是連接。 任何其他實例將使用系統默認主題膨脹你的視圖,導致顯示輸出你可能沒想到。

這些規則的十字路口

總是,有人會到達這兩個規則沖突的結論。 有一個案件在長期引用的應用程序當前的設計必須保存,我們必須拯救一個活動因為我們想要完成的任務包括UI的操作。 如果是這樣的話,我就會勸你重新考慮你的設計,因為這將是一個教科書的實例戰斗框架。

經驗法則

在大多數情況下,使用上下文直接提供給你從封閉組件在工作。 您可以安全地舉行的引用,只要引用不超越該組件的生命周期。 一旦你要保存的引用上下文從一個對象的生活超出你的活動或服務,即使暫時,開關,參考您保存到應用程序上下文。


❻ android手機是什麼意思

android手機意思是:使用Android操作系統的手機。

Android是一種基於Linux的自由及開放源代碼的操作系統,主要使用於移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。尚未有統一中文名稱,中國大陸地區較多人使用「安卓」或「安致」。

Android操作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購注資。2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。

隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。第一部Android智能手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機等。

(6)androidabstract擴展閱讀

Android一詞最早出現於法國作家利爾亞當(Auguste Villiers de l'Isle-Adam)在1886年發表的科幻小說《未來夏娃》(L'ève future)中。他將外表像人的機器起名為Android。

Android的Logo是由Ascender公司設計的,誕生於2010年,其設計靈感源於男女廁所門上的圖形符號,於是布洛克繪制了一個簡單的機器人,它的軀干就像錫罐的形狀,頭上還有兩根天線,Android小機器人便誕生了。

其中的文字使用了Ascender公司專門製作的稱之為「Droid 」 的字體。Android是一個全身綠色的機器人,綠色也是Android的標志。顏色採用了PMS 376C和RGB中十六進制的#A4C639來繪制,這是Android操作系統的品牌象徵。有時候,它們還會使用純文字的Logo。

閱讀全文

與androidabstract相關的資料

熱點內容
lua中的android 瀏覽:439
加密貴還是植發貴 瀏覽:660
陽光壓縮機繼電器 瀏覽:969
修改阿里雲伺服器密碼 瀏覽:815
lk4102加密晶元 瀏覽:588
怎麼更改app店面 瀏覽:489
設備部門如何做好伺服器 瀏覽:849
androido下載 瀏覽:478
神奇高量戰法副圖源碼 瀏覽:830
匯編語言設計凱撒密碼加密器 瀏覽:392
主次梁加密是加在哪裡 瀏覽:664
模板匹配演算法matlab 瀏覽:825
外地程序員去北京 瀏覽:24
安卓機換蘋果12如何轉移數據 瀏覽:420
互聯網ntp伺服器地址及埠 瀏覽:613
pdf到word轉換器 瀏覽:269
飛行解壓素材 瀏覽:498
51單片機指令用背嗎 瀏覽:936
unityai演算法 瀏覽:834
我的世界ice伺服器如何打開pvp 瀏覽:975