我的Android学习笔记(1)
眼看着微软日落西山,PC机逐渐衰微,死守着win32平台等于等死,不得不说世界变化真是快,五年时间安卓份额从1.6%涨到现在81.5%,真是令人感叹移动终端的强大力量。所以从前天起我开始折腾安卓开发,虽说现在有点晚,不过根据我上手的感觉来看,安卓开发目前还是毕竟容易,今天开始我会把每天学到的东西贴一份到这里,与大家共勉。(希望能坚持下来,嘿嘿)
本文由Lance.Moe原创,多数内容属于主观见解,难免有错漏之处,欢迎跟帖回复指出我的错误,大家共同学习~#pao35##pao10#
1.Java
说到安卓开发,不得不提到就是Java,安卓编程基础就是Java,所以先要能够掌握简单的Java语法。
习惯了C++和win32那种API调用,上手Java可能会感觉很不适应,比如我。原来做一件事,总是想着new或者malloc一片内存,保存到一块指针,API有可能是用返回值返回数据,也有可能从参数把数据传回,参数调用分传值和传址,用完后如果用new创建用delete删除,用malloc创建就用free删除,一切皆内存,没了内存C++和win32开发寸步难行......
现在就要改变这种习惯了,根据我几天使用来看,首先Java不允许自己创建一片内存指针,类似操作只可以用new方式创建一片byte数组,而且用完后不需要也不可以手动释放,所有的内存释放操作由系统进行。并且Java内除了几种基本类型(long,int,byte,float,double,char,boolean)外全部都是对象类型(如Long,Integer,Byte,Float,Double,Char,String等等),基本用不到内存操作,Java基本类型由下表所示。
数据类型 描述 数据范围 备注
boolean 1位整数 0和1 用作开关状态
byte 8位整数 -128~127 可用来节省内存的使用
short 16位整数 -32768~32,767 也比较省内存
int 32位整数 -2,147,483,648~2,147,483,647 多数时候够用
long 64位整数 -9,223,372,036,854,775,808~9,223,372,036,854,775,807 32位不够用才会选这个
float 32位浮点 可节省内存
double 64位浮点 非整数浮点可用
由上表可知Java的基本类型和C++基本一致,但是也有不同的:
第一,Java中不存在unsigned,这点我认为是Java的先天残疾,这点要先接受;
第二,C++的long与int在32位以上系统等价,两者都是32位整型占4字节,而Java的long则是64位整形占8字节,与C++的int64等价;
第三,Java的布尔型写作boolean而不是C系所熟悉的bool。
另外还有一点要强调,浮点类型不能直接进行比较,要进行范围比较,这个和C系语言基本一致。
其他在语法的差别很小,要改掉的“坏习惯”比如这个:
在WIN32开发中,我们使用的命名方法是微软推荐的“匈牙利命名法”,其规则是类型小写+名称,类中名称要加g_前缀等等,如:
char [] szName;
int nAge;
private int g_nID; 而Java开发中,使用的是驼峰命名法,不需要写出数据的类型,变量首字母小写,类名、函数名、属性、命名空间首字母大写,其后每个单词首字母大写,如:
int studentCount;
public class DataBaseService; 从C++转型,刚开始几分钟还是很不习惯的,但一旦习惯了这种设定,还是很带感的,嘿嘿。
另外有一个个人习惯,在写C++代码的时候我使用强制转换喜欢这样写:int(bType),这样的话可以看起来更美观,但是很遗憾,Java只可以这样写:(int)bType,以后果然自成一派的东西还是少用呀~
个人认为要注意的就是这些,其他的问题大家应该都非常熟悉啦。下面就开始分条讲述安卓的学习过程。
下文接:https://bbs.ntrqq.net/thread-12440-1-1.html
唯有佩服! 感谢楼主分享~#pao22# 已经离开程序开发好久了,不要说算法了,语法都还给老师了#pao40# clonyxxl 发表于 2016-3-23 18:21
已经离开程序开发好久了,不要说算法了,语法都还给老师了
一般应用开发用不到什么高端算法的,做应用主要是代码写的好看就行了#pao12# 真的是大神级别了 正在努力学Java 学习中,我是用DELPHI与PHP的,,,现在正在转型中。。。 感谢楼主分享~ 版主牛逼 努力学习编程、安全 感谢楼主分享 感谢楼主分享 java好学吗,想学学,0基础 范文芳范围范文芳
页:
[1]
2