Java for Android
2016-05-19 00:03
459 查看
包含讲解android中的java特性以及面试题或者知识点
2、
android哪些对象我们要下意识的认为他也是类。(配置文件也是类!)
比如Button继承了View,我们可能需要instanceof来进行类型的判断
一般是架构师考虑
获得对象,不一定通过new才能得到对象并执行方法,反射也可以。
局部内部类:方法中定义,其他类不可用
静态内部类
匿名内部类
互斥
信号量
DatePicker 日期选择器
TimePicker 时间选择器
DigitalClock 只显示时间
TextClock 能显示时间和日期,在4.2 API17之后推荐使用(不再使用digitalclock)
AnalogClock 模拟指针的时间显示
Chronometer 计时器
CalendarView:日历控件 链接:/article/4951201.html
hashmap和hashtable的区别
线程同步有哪些方式?
内存泄漏
垃圾回收
什么是程序?Java是什么?
1、数据结构+算法2、
android的使用的java特性
1-理解面向对象
一切都是类android哪些对象我们要下意识的认为他也是类。(配置文件也是类!)
2-使用instance校验对象类型
Android中何时用到?比如Button继承了View,我们可能需要instanceof来进行类型的判断
LinearLayout layout = (LinearLayout )this.getLayoutInflater().inflate(R.layout.layout_main,null);//将布局文件实例化 setContentView(layout ); childCount = layout.getChildCount();//获得子控件个数 View childView = layout.getChildAt(i); //获得子控件 if(childView instanceof Button)//判断是button { //按钮相关操作 }
3-Arrays
int colors[] = getResource().getStringArray(R.array,colorsarray);
动态添加布局
LinearLayout layoutRoot = new LinearLayout(this); layoutRoot.setOrientation(LinearLayout.VERTICAL); //设置方向为竖直 LinearLayout.LayoutParams lyparams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT); //该线型布局的属性 LinearLayout.LayoutParams childParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);//linearlayout中子控件的属性 layoutRoot.setLayoutParams(lyparams); //设置本身属性 for(int i =0; i < 10; i++) { TextView textView = new TextView(this); layoutRoot.addView(textView, childParams);//添加子控件,并且设置属性 } setContentView(layoutRoot); //将该线型布局显示出来
4-Reflection反射基础
为什么是反射?
一些配置信息可以在运行时进行实例化,并且能对其进行一些操作。如何将配置xml中的控件实例化的?
都是通过反射来实现的例子:
String className = "android.app.NotificationManager"; Class classToInvest; try { classToInvest = Class.forName(className); //classToInvest.getMethod(.....); 可以得到实例的方法 } catch (ClassNotFoundException e) { e.printStackTrace(); } Constructor[] classConstructors = classToInvest.getDeclaredConstructors();//得到构造函数 for(Constructor constructor: classConstructors) //循环处理 { //constructor的一些操作 }
反射的一些作用
得到申明的方法一般是架构师考虑
获得对象,不一定通过new才能得到对象并执行方法,反射也可以。
5-Iteration 迭代器
6-Cursor(cursor与数据库操作的应用)
cursor:数据游标7-Inner Class内部类
分类
成员内部类:某类内部方法都可以用该内部类局部内部类:方法中定义,其他类不可用
静态内部类
匿名内部类
内部类的作用?
例如button的onClickListenner就可以使用
怎么使用?
内部类作用域?
8-javadoc
能帮助生成软件文档9-Thread
ANR错误(无响应错误)线程同步
阻塞互斥
信号量
可以使用synchronized
Object object = new object(); synchronized(object)//对象锁 //synchronized(this)给自己加锁 { sale();// }
10-String基础
如何使用?11-Data&Time基础
7种控件DatePicker 日期选择器
TimePicker 时间选择器
DigitalClock 只显示时间
TextClock 能显示时间和日期,在4.2 API17之后推荐使用(不再使用digitalclock)
AnalogClock 模拟指针的时间显示
Chronometer 计时器
CalendarView:日历控件 链接:/article/4951201.html
总结?笔试面试
arrays:set和connection的区别hashmap和hashtable的区别
线程同步有哪些方式?
内存泄漏
垃圾回收
相关文章推荐
- Android Studio 常用插件
- Android Studio
- Windows Android Studio生成javadoc
- Android模拟器之—“unfortunately,launcher has stopped.”
- Weex开源首月记
- Android xml资源文件中@、@android:type、@*、?、@+含义和区别
- Android Framework------之Property子系统
- Android学习笔记:高效载入大量Bitmap
- Jcenter
- 从头学android_通过查看Setting源码来获得剩余存储空间
- Android Studio 模拟器配置所遇一二问题
- 读书笔记(10) Android的消息机制
- Android 中定义接口的用法
- Android Studio 2.0 新手版
- android - Genymotion 安装
- android仿天天动听歌曲自动滚动view
- Android的核心服务是指那些
- Android 四种常用的监听器
- android native 与h5 交互技巧
- Android Loader机制,实现异步加载数据