admin 发表于 2016-3-23 16:17:44

我的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

amyotrophiclate 发表于 2016-3-23 16:40:09

唯有佩服!

沐玛 发表于 2016-3-23 17:31:40

感谢楼主分享~#pao22#

clonyxxl 发表于 2016-3-23 18:21:06

已经离开程序开发好久了,不要说算法了,语法都还给老师了#pao40#

admin 发表于 2016-3-23 19:20:16

clonyxxl 发表于 2016-3-23 18:21
已经离开程序开发好久了,不要说算法了,语法都还给老师了

一般应用开发用不到什么高端算法的,做应用主要是代码写的好看就行了#pao12#

truch 发表于 2016-3-23 22:59:04

真的是大神级别了

bfchengnuo 发表于 2016-3-25 12:55:00

正在努力学Java

fjmdbbs 发表于 2016-3-26 09:09:53

学习中,我是用DELPHI与PHP的,,,现在正在转型中。。。

fskenny 发表于 2018-6-28 16:15:23

感谢楼主分享~

sola97 发表于 2018-6-29 21:11:53

版主牛逼

zimu 发表于 2018-6-29 22:24:11

努力学习编程、安全

sunny11o 发表于 2018-6-30 15:30:39

感谢楼主分享

大斌 发表于 2018-6-30 15:44:36

感谢楼主分享

576548026 发表于 2018-6-30 16:03:36

java好学吗,想学学,0基础

adomin 发表于 2018-7-1 15:05:32

范文芳范围范文芳
页: [1] 2
查看完整版本: 我的Android学习笔记(1)