Androidの知識概要

5677 ワード

Androidの知識概要
Javaごみ回収メカニズム
Javaメモリはどのように区分されているのか、Java言語はなぜゴミ回収メカニズムを使用するのか.
ごみ判定
1.       
2.     

ごみ清掃
1.   -             
2.     
3.   -   
4.       

ごみの回収メカニズムがあれば、Javaはメモリの漏洩が発生しますか?もし存在するとしたら、Javaは何か対応メカニズムがありますか?
Javaの4つの参照方法
  • 強引用
  • ソフトリファレンス
  • 弱引用
  • 虚リファレンスソフトリファレンス、弱リファレンスはリファレンスキューと組み合わせてどのように使用しますか?使用の目的は何ですか?参照:http://blog.csdn.net/u012152619/article/details/46981643 以上、Javaのゴミ回収やメモリについて、コードを書くときに注意すべき点はありますか?

  • JAvaデータ構造
    データ構造関連クラス:Collection、List、Set、Map
    __List:__ArrayList、LinkedList、Vector_Set:__hashSet、LinkedSet、TreeSet_Map:__HashTable、HashMap、LinkedMap、TreeMapのメモリ格納特性、データ成長特性、およびそれぞれの適用シーンは、Iterator、ListIterator、Foreachスレッドセキュリティの問題を巡ります.Treeクラスの赤と黒のツリーの概念CollectionsとArraysの2つの補助ツールクラスの使い方HashMap/ArrayMap/SparseArrayの3つの違いと使用シーンを理解するhttp://blog.csdn.net/u010687392/article/details/47809295
    クローンコピー
  • javaでclone()コピーをどのように実現し、コピーを完了したときにメモリをどのように割り当てますか?
  • 浅いコピーとは何ですか.深いコピーとは何ですか.どのようにして深いコピーを実現しますか.参照先:http://blog.csdn.net/zhangjg_blog/article/details/18369201

  • マルチスレッド
    スレッドの使用方法
    Thread、Runnable、Callable、それぞれの特徴
    スレッドのいくつかのステータス
    作成、準備完了、実行、ブロック、停止
    スレッドプール
    スレッドプールを使用する理由
  • スレッドプールでよく見られるいくつかのクラスの使い方:ThreadPoolExecutor、Executor、Executors、ExecutorService、CompletionService、Future、Callableなど
  • スレッドプールの4つの分類newCachedThreadPool、newFixedThreadPool、newScheduledThreadPool、SingleThreadExecutor
  • カスタムスレッドプールThreadPoolExecutor
  • スレッドプールの動作原理
    コアスレッド数、待機キュー、処理ポリシーなど
    スレッド同期
    同期方式:synchronizedとlock同期関連方法:wait()/notify()/notifyAll()sleep()/join()/yield()await()/signal()/signalAllはどのように使用し、それぞれのシーンに適用しますか?
    参照先:http://wiki.jikexueyuan.com/project/java-concurrency/executor.html
    デザインモード
    オブジェクト向け設計の6つの原則
    コードの最適化の第一歩-単一の職責原則はプログラムをより安定させ、より柔軟にする--開閉原則は拡張性の高いシステムを構築する--リス置換原則はプロジェクトに変化の能力を持たせる--逆置き原則システムに依存してより高い柔軟性を持つ--インタフェース隔離原則のより良い拡張性--ディミット原則
    参照先:http://blog.csdn.net/bboyfeiyu/article/details/50103471
    android適合問題
    異なるシステムバージョン以前の適合性--APIの変更
    異なる携帯電話メーカー間の適合--Android原生システムを改造した
    スクリーンアダプティブ--寸法文書(dp/sp/px)、レイアウトlayout、ピクチャリソース
    参照:http://blog.csdn.net/qq_28758749/article/details/51297842
    Handlerメカニズム
  • 使用方法、send/postの2つの方法
  • handler下位層は、メッセージの送信からメッセージの受信までの
  • をどのようにするか.
  • Looper、Handler、MessageQueueとMessageの概念と関係
  • を明らかにする
  • HandlerThreadとは何か、どのように使うのか、Handlerとどのような違いがありますか?参照先:http://blog.csdn.net/jackzhouyu/article/details/49079699

  • Activity
  • 正常に実行された場合、ライフサイクルはどのように変化しますか?異常時とActivityの再展開時に、メソッドの呼び出しタイミングに注意:onSaveInstance()、onRestoreInstance()、onWindowFocusChanged()およびonConfigurationChanged()および使用方法
  • onStart()とonResume()、onPause()とonDestroy()の2つの方法が似ていますが、Androidはなぜこのように設計されているのでしょうか.
  • Activityの4つの起動方法standard、singleTop、singTask、singleInstanceは何ですか?彼らonNewIntent()メソッドの関係
  • 参考:(1)http://blog.csdn.net/woshimalingyi/article/details/50961380 (2) http://blog.csdn.net/jiangwei0910410003/article/details/16968881 (3) http://www.cnblogs.com/lijunamneg/archive/2013/03/26/2982461.html (4)http://blog.csdn.net/mynameishuangshuai/article/details/51491074
    Fragment
    1.    fragment?      fragment?  
        Activity         
    2. fragment     ,   Activity   ?
    3. fragmentManger FragmentTransaction    ,  replace/add/remove/hide/show  ,              
    4. fragment Activity   ,                
      fragment       
        a.   fragment Duplicated id  Tag
        b. replace  
        c. Fragment public         
          :Fragment      (Activity         Fragment     ,        ,        ,     )。                    。
        d. getActivity()    
          :http://blog.csdn.net/goodlixueyong/article/details/48715661
        f. frgament viewpager    ,        ,fragment              ,   Activity  
        http://blog.csdn.net/tongcpp/article/details/41978751
      :
    (1)http://toughcoder.net/blog/2015/04/30/android-fragment-the-bad-parts/
    (2)http://blog.csdn.net/lmj623565791/article/details/37970961
    

    Service
    1.            
    2. Service      Thread,          
    3. Service IntentService   
    

    参照先:http://blog.csdn.net/xiao__gui/article/details/11579087 http://blog.csdn.net/huutu/article/details/40357481
    androidイベント配信メカニズム
    1. Activity            ,        ?
    2. view viewgroup      ,  dispatchTouchEvent()、onInterceptTouchEvent、onTouchEvent、onTouch onClick  
    

    public boolean dispatchTouchEvent(MotionEvent ev)は、イベントの配布に使用されます.イベントが現在のViewに渡される場合、このメソッドは必ず呼び出され、現在のViewのonTouchEvent()メソッドと下位のViewのdiapatchTouchEvent()メソッドの影響を受け、現在のイベントが消費されるかどうかを示します.public boolean onInterceptTouchEvent(MotionEvent event)は、イベントをブロックするかどうかを判断するために使用され、現在のViewがイベントをブロックしている場合、同じイベントシーケンスでこのメソッドは再呼び出されず、結果は現在のイベントをブロックするかどうかを示します.public boolean onTouchEvent(MotionEvent event)はdispatchTouchEvent()で呼び出され、クリックイベントを処理するために使用され、結果は現在のイベントが消費されているかどうかを示し、消費されていない場合、同じイベントシーケンスでは、現在のViewはイベントがサブviewのaction_として再受信できないdownイベントが処理されないと、後続のイベントシーケンスは彼に渡されなくなります.down以外のイベントを処理しないと、後続のイベントも受信されますが、親コンポーネントはr e q u s t D e a l l o w I n e r ceptTouchEventを処理できません.onInterceptTouchEventの2つの方法の参照:https://segmentfault.com/a/1190000005268399
    ネットワーク通信メカニズムに精通している.TCP、HTTPプロトコルに対して豊富な実践経験がある;HTML、CSS、JSなどのweb基礎知識を熟知し、独立または主導的に大中型モバイルappを完成した経験者を優先する.androidシステムのメカニズムとframeworkソースコードを深く研究し、android上のapp開発、デバッグ、コンパイル、パッケージなどのプロセスに精通している.技術的な難題の難関攻略経験があり、モバイル側appメモリの最適化、描画効率の最適化、IO最適化またはデータベース、電力量などの最適化の面で豊富な経験がある.
    面接問題の準備
  • app間の通信方法
  • はあなたにapp設計プロジェクトをあげて、あなたはどのようにフレームワークを構築するべきで、どのようにこのapp
  • を設計します
  • Androidロード大図問題解決方法1
  • Androidロード大図問題解決方法2
  • 乾物資源
    https://juejin.im/entry/578d938079bc44005ff26aec