一、
1、Java如何體現(xiàn)面向?qū)ο笏枷?
封裝、繼承、多態(tài)?
2、Java如何實(shí)現(xiàn)多態(tài)?
[java] view plaincopyprint?
01.class A
02.{
03. void m();
04.}
05.class B extends A
06.{
07. void m();
08.}
09.A a = new B();
10.a.m(); //這里調(diào)用的是B的m方法
3、實(shí)現(xiàn)壓棧操作?(給了個(gè)棧結(jié)構(gòu),具體的記不住了)
二、
1、寫一函數(shù),實(shí)現(xiàn)查找某一字符串中子串的個(gè)數(shù),例如String中i的個(gè)數(shù)為1 [java] view plaincopyprint?
01.public int calSubString(String s, String sub) {
02. int n = 0;
03. char[] c = s.toCharArray();
04. for (char e : c) {
05. if (String.valueOf(e).equals(sub)) { n++; }
06. }
07. return n;
08.}
2、非遞歸實(shí)現(xiàn)二叉樹的后序遍歷,要求時(shí)間復(fù)雜度和空間復(fù)雜度都是O(n)
3、鏈表,每個(gè)節(jié)點(diǎn)有兩個(gè)指針,第一個(gè)指針指向后一個(gè)節(jié)點(diǎn),第二個(gè)指針指向后一個(gè)的后一個(gè)節(jié)點(diǎn),設(shè)計(jì)函數(shù)實(shí)現(xiàn)刪除所有值為M的節(jié)點(diǎn)
三、
基于手機(jī)平臺(tái)設(shè)計(jì)Push系統(tǒng),包括手機(jī)端和Push Server端。這套Push系統(tǒng)是一個(gè)基礎(chǔ)服務(wù)系統(tǒng),不包括具體業(yè)務(wù)邏輯,是一個(gè)開放系統(tǒng),開放給第三方應(yīng)用開發(fā)者使用。請(qǐng)基于手機(jī)系統(tǒng)的一些特性,來設(shè)計(jì)這套Push系統(tǒng)。
1) 描述手機(jī)端部分設(shè)計(jì)時(shí),需要考慮的關(guān)鍵性能指標(biāo)有哪些
2) 畫出手機(jī)端程序結(jié)構(gòu)圖
3) 畫出第三方程序使用這套系統(tǒng)時(shí)所涉及到的相關(guān)部分系統(tǒng)結(jié)構(gòu)圖
4) 你覺得基于這套系統(tǒng)能夠開發(fā)一個(gè)什么樣的第三方程序,并舉一個(gè)例子