前段时间请同学帮我内推了某知名网络公司,抱着一腔鸡血只身北上,以为自己的经历了N个项目的洗礼之后已经可以应对大多数场景。可是不然,这次真的真的真的是被虐惨了。这是面试,很多话还是要说,很多原理不是明白就可以,要可以表达出来。而我又不喜欢临时抱佛脚的突击复习。因此,系统的整理一下,作为一名Android开发程序猿,我到底需要掌握哪些东西才算合格。当然,具体需要哪些知识,也要具体情况具体分析,做游戏的和做应用的要求不一样,做视频APP的和做商城的要求肯定也不一样。
Java面向对象编程
1.Java基本数据类型与表达式,分支循环。
2.String和StringBuffer的使用、正则表达式。
3.面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收;构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类,Java的垃极回收机制,Javadoc介绍。
4.对象实例化过程、方法的覆盖、final关键字、抽象类、接口、继承的优点和缺点剖析;对象的多态性:子类和父类之间的转换、抽象类和接口在多态中的应用、多态带来的好处。
5.Java异常处理,异常的机制原理。
6.常用的设计模式:Singleton、Template、Strategy模式。
7.JavaAPI介绍:种基本数据类型包装类,System和Runtime类,Date和DateFomat类等。
8.Java集合介绍:Collection、Set、List、ArrayList、Vector、LinkedList、Hashset、TreeSet、Map、HashMap、TreeMap、Iterator、Enumeration等常用集合类API。
9.Java I/O输入输出流:File和FileRandomAccess类,字节流InputStream和OutputStream,字符流Reader和Writer,以及相应实现类,IO性能分析,字节和字符的转化流,包装流的概念,以及常用包装类,计算机编码。
10.Java高级特性:反射、代理和泛型。
11.多线程原理:如何在程序中创建多线程(Thread、Runnable),线程安全问题,线程的同步,线程之间的通讯、死锁。
12.Socket网络编程。
设计模式
资料来自http://blog.csdn.net/happy_horse/article/details/50908439
创建型模式5种:
单例模式,抽象工厂模式,工厂模式,原型模式,建造者模式。
(口诀:单原建造者,东西二厂)
结构型模式7种:
适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式。
(口诀:一器一桥一元一代理;装饰组合外观)
行为型模式11种:
观察者模式,中介者模式,访问者模式,解释器模式,迭代器模式,备忘录模式,责任链模式,状态模式,策略模式,命令模式,模板模式。
(口诀:三者两器、一录一链一模板,状态策略命令)
数据结构基础
Android UI
Android开发环境搭建:
Android介绍,Android开发环境搭建,第一个Android应用程序,Android应用程序目录结构。
Android初级控件的使用:
TextView控件的使用
Button控件的使用方法
EditText控件的使用方法
ImageView的使用方法
RadioButton的使用方法
Checkbox的使用方法
Menu的使用方法
Android高级控件的使用:
Autocompletion的使用方法
ListView的使用方法
GridView的使用方法
Adapter的使用方法
Spinner的使用方法
Gallary的使用方法
ScrollView的使用方法
对话框与菜单的使用:
Dialog的基本概念
AlertDialog的使用方法
DatePickerDialog的使用方法
Menu的使用方法
自定义Menu的实现方法
控件的布局方法:
线性布局的使用方法
相对布局的使用方法
表格布局的使用方法
多Acitivity管理:
AndroidManifest.xml文件的作用
Intent的使用方法
使用Intent传递数据的方法
启动Activity的方法
IntentFilter的使用方法
Activity Group的使用方法
自定义控件实现方法:
自定义ListView的实现方法
可折叠ListView的使用方法
自定义Adapter的实现方法
自定义View的实现方法
动态控件布局的上实现方法
Android网络编程与数据存储
基于Android平台的HTTP通讯:
Http协议回顾
Apache Commons 工具包介绍
使用Get方法向服务器提交数据的方法
解析服务器响应数据的方法
使用POST方法向服务器提交数据的实现方法
向服务器提交非文本数据的实现方法
使用Http协议实现多线程下载
使用Http协议实现断点续传
Android数据存储技术:
SQLite3数据库简介
SQL语句回顾
SQLite3编程接口介绍
SQLite3事务管理
SQLite3游标使用方法
SQLite3性能分析
访问SDCard的方法
访问SharedPreferences的方法
ContentProvider使用方法:
ContentProvider实现共享数据、URI的解析与UriMatcher、ContentUris的使用、使用ContentResolver操作ContentProvider、ContentProvider的监听Android当中的异步操作:Handler的使用方法;异步任务的基本概念;AsyncTask的使用方法和实现原理。
Android图形编程技术
1、图形处理基础:2D图形编程基础;
2、点、线、面等基本图形元素绘制方法;
3、Android动画框架简介;
4、位移动画的实现方法;
5、淡入淡出动画的实现方法;
6、旋转动画的实现方法;
7、Matrix的使用方法。
-- 山东济南高新