摘要:韦东山android视频学习笔记

一、android系统的基本框架如图一所示,应用程序是用java编写的,底层驱动是用C代码写的,java与C怎么连接在一起主要是通过本地服务。android系统的核心主要在于framwork层.

图一

二、

2.1 第一个java程序:需要注意的是类的命名,首字母必须要是大写,而且文件的名字要跟类名保持一致。

 public class Hello{
public static void main(String args[]){
System.out.println("Hello,World!");
}
}

编译运行命令如图二:

图二

2.2 循环打印的例子:

 public class Hello{
public static void main(String args[]){
int i = 0;
for (i = 0;i < 3;i ++){
System.out.println("Hello World");
}
}
}

编译运行命令如图三:

图三

2.3 java与C语言的数据类型对比如图四,java中无指针类型的数据,有引用类型的数据.java中字符串是一个string类。数据不丢失的前提下可以自动转换,

图四

图五

相关代码:

 public class Var{
public static void main(String args[]){
int a = 3; //整数默认是int,
float f1 = (float)3.14; //有小数时默认是double,因此这里需要转换不然数据精度会丢失
float f2 = 3.14f; int i = 4;
short s = 4; //数据不丢失的前提下可以自动转换
short s2 = (short)40000; //超过数据范围,需要强制转换 //s = i;
s = (short)(s + 1); //,因为对于byte,short的运算,为了保证精度,会自动转换为int类型,因此等号右边需要强制转换
s = (short)(s + s2); //int* p = malloc(10*sizeof(int));
int p[] = new int[10];
int p2[] = {1,2,4}; // static alloc // char str[100];
char str[] = new char[100]; //char str2[] = "abc";
String str2 = "abc"; p = null;
p2 = null;
str = null;
str2 = null; }
}

2.4与C语言相比,Java的函数可以进行重载的操作,对函数的个数以及函数参数的类型也能够进行重载.相关代码如下

 public class Function{
public static void main(String args[]){
System.out.println(add(1,2));
System.out.println(add(1,2,3));
System.out.println(add(1.0f,2.0f));
} public static int add (int x,int y){
return x + y;
} public static int add (int x,int y,int z){
return x + y + z;
} public static float add (float x,float y){
return x + y;
} }

编译运行结果如下图:

图六

2.5函数传递参数,如果要修改传递的参数要使用指针,相关代码如下:

 public class Param {
public static void main(String args[]) {
int x = 1;
fun (x); int p[] = new int[1];
p[0] = 123; System.out.println("Before fun2: "+p[0]);
fun2(p);
System.out.println("After fun2: "+p[0]); System.out.println(x);
} public static void fun(int x) {
x = 100;
} public static void fun2(int[] p) {
p[0] = 200;
} }

编译运行执行结果:

图七

 相关代码存放在github,可以下载https://github.com/zzb2760715357/100ask

 

第1课_Java基础知识【学习笔记】的更多相关文章

  1. Objective-c基础知识学习笔记

    Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...

  2. 〖前端开发〗HTML/CSS基础知识学习笔记

    经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...

  3. java基础知识学习笔记

    本文知识点以js为参照.对比分析得出笔记.JavaScript之所以叫JavaScript是打算借助java推广自己.虽然都是开发语言,但JavaScript一开始主要运行在 客户端,而java主要运 ...

  4. 传智播客 Html基础知识学习笔记

    HTML基础 <p></p>标志对用来创建一个段落,,<p>标志还可以使用align属性, 它用来说明对齐方式 语法是:<p align="&quo ...

  5. Unity基础知识学习笔记二

    1,object Instantiate(object original,Vector3 position,Quaternion rotation)       克隆原始物体,并返回克隆物体.     ...

  6. Unity基础知识学习笔记一

      1,Unity 4.5.4这个版本,在打包ios应用程序的时候.会生成一个xcode工程,但是这个工程无法在xcode6上变异,无法生成ios8上发布.所以unity在ios8发布3天内就发了4. ...

  7. jquery基础知识学习笔记

    jquery是一个js库/常用版本是jjquery-1.7.2.js/这个版本主要是用来做开放用途 做产品的时候是用它的min版本.玩jquery的时候,不管干啥都要花钱(美元)   注意点: 1.s ...

  8. CSS基础知识学习笔记

    1.css基本样式讲解 1.1 css背景background-attachment:背景图像是否固定或者随着页面的其余部分滚动background-color:设置元素的背景颜色background ...

  9. 传智播客 Html基础知识学习笔记2

    一.<select>标签 用来创建类似于WinForm中的ComboBox(下拉列表)或者LisBox 如果size大于1就是LisBox,否则就是ComboBox; <select ...

随机推荐

  1. SQL SERVER-Alwayson原理

    流程 1.异步提交模式 主副本无须确认该副本已经完成日志固化,就可提交事务. 主副本不受辅助副本的影响 辅助副本上的DB处于SYNCHRONIZING 2.同步提交模式 主副本要确认副本已经完成日志固 ...

  2. Win10 C盘 系统和保留 占用空间 非常大

    Win10 C盘 系统和保留 占用空间 非常大今天在写代码的时候,突然发现Redis起不来了,一看原因,是因为C盘空间不足.然后,我看了下C盘,发现...一个叫系统和保留的东西,居然占了110G的空间 ...

  3. SpringBoot返回date日期格式化

    SpringBoot返回date日期格式化,解决返回为TIMESTAMP时间戳格式或8小时时间差 问题描述 在Spring Boot项目中,使用@RestController注解,返回的java对象中 ...

  4. java8 lamb表达式对List排序

    场景一:List<Long> 或其他泛型,非对象 List<Long> ids = new ArrayList(); ids.add(100000001L); ids.add( ...

  5. pip 和pip3的区别

    前言装完python3后发现库里面既有pip也有pip3,不知道它们的区别,因此特意去了解了一下. 解释先搜索了一下看到了如下的解释, 安装了python3之后,库里面既会有pip3也会有pip 1. ...

  6. pom中添加插件打包上传源码

    <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> ...

  7. mysql字典取值,列表包含

    SELECT * FROM e where JSON_CONTAINS(json_extract(scope_detail, '$.shop'), '001');

  8. 本地安装部署ActiveCollab

    ActiveCollab是一个非常易于使用.基于Web.开源的协作开发与项目管理工具. 我们公司一直在用这款工具,进行任务分配和时间填写,十分简便 ActiveCollab可以利用它轻松地搭建一个包括 ...

  9. 使用BERT模型生成token级向量

    本文默认读者有一定的Transformer基础,如果没有,请先稍作学习Transormer以及BERT. 相信网上有很多方法可以生成BERT向量,最有代表性的一个就是bert as service,用 ...

  10. screen 调到后台使用

    yum -y install screen   screen -S  name     开启后台进程 screen -ls      显示进程 screen -r  ID号    进入 Ctrl+r再 ...