第1课_Java基础知识【学习笔记】
摘要:韦东山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基础知识【学习笔记】的更多相关文章
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
- 〖前端开发〗HTML/CSS基础知识学习笔记
经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...
- java基础知识学习笔记
本文知识点以js为参照.对比分析得出笔记.JavaScript之所以叫JavaScript是打算借助java推广自己.虽然都是开发语言,但JavaScript一开始主要运行在 客户端,而java主要运 ...
- 传智播客 Html基础知识学习笔记
HTML基础 <p></p>标志对用来创建一个段落,,<p>标志还可以使用align属性, 它用来说明对齐方式 语法是:<p align="&quo ...
- Unity基础知识学习笔记二
1,object Instantiate(object original,Vector3 position,Quaternion rotation) 克隆原始物体,并返回克隆物体. ...
- Unity基础知识学习笔记一
1,Unity 4.5.4这个版本,在打包ios应用程序的时候.会生成一个xcode工程,但是这个工程无法在xcode6上变异,无法生成ios8上发布.所以unity在ios8发布3天内就发了4. ...
- jquery基础知识学习笔记
jquery是一个js库/常用版本是jjquery-1.7.2.js/这个版本主要是用来做开放用途 做产品的时候是用它的min版本.玩jquery的时候,不管干啥都要花钱(美元) 注意点: 1.s ...
- CSS基础知识学习笔记
1.css基本样式讲解 1.1 css背景background-attachment:背景图像是否固定或者随着页面的其余部分滚动background-color:设置元素的背景颜色background ...
- 传智播客 Html基础知识学习笔记2
一.<select>标签 用来创建类似于WinForm中的ComboBox(下拉列表)或者LisBox 如果size大于1就是LisBox,否则就是ComboBox; <select ...
随机推荐
- (在客户端)https抓包解密
(一)原理分析 https的数据包是用对称秘钥(https协议协商出来的随机数)加密后的密文. 对称秘钥在传输线路上是密文的(被非对称加密过),但是在client.server端是明文的(因为要用于加 ...
- MySQL FEDERATED引擎使用示例, 类似Oracle DBLINK(转)
1 引擎说明 本地MySQL数据库要访问远程MySQL数据库的表中的数据, 必须通过FEDERATED存储引擎来实现. 有点类似Oracle中的 数据库链接(DBLINK). 要允许这个存储引擎, 当 ...
- windows+phpstudy(apache) 以cgi方式运行python
Apache配置 在httpd.conf中查找DocumentRoot: +ExecCGI 支持cgi DocumentRoot "F:\phpStud\PHPTutorial\WWW&qu ...
- springboot 使用常用注解
找到方法封装成json格式 @RestController = @Controller+@ResponseBody //一个组合注解,用于快捷配置启动类,springboot启动主入口 @Spring ...
- 【HICP Gauss】数据库 数据库管理(调优 启动流程)-4
数据库参数: 创建数据库 调优数据库 其他---->控制资源使用 控制数据库内部机制 设置重要属性 参数数据保存在cfg/Zengine.ini 文件中 参数保存使用 key=value的保存形 ...
- CentOS7清理老旧内核
CentOS7如果是一步步内核升级上来的将会面临一个问题(一般安装了图形化界面的系统常见),由于内核增多/boot/的容量减少,导致启动变慢.这时就需要清理老旧内核,释放/boot/空间. 使用una ...
- 适合公司和个人的目标管理方法:OKR!
1.定义 OKR就是Objectives and Key Results的简称,包括目标(Objectives)和关键结果(Key Results)两个要素. 2.目的 就公司和团队而言 ...
- [牛客网 -leetcode在线编程 -01] max-points-on-a-line -穷举
题目及题目来源 链接:https://www.nowcoder.com/questionTerminal/bfc691e0100441cdb8ec153f32540be2 来源:牛客网 首页 > ...
- c# 定时关闭 MessageBox 或弹出的模态窗口
我们都知道,MessageBox弹出的窗口是模式窗口,模式窗口会自动阻塞父线程的.所以如果有以下代码: MessageBox.Show("内容',"标题"); 则只有关闭 ...
- 前端知识总结--2 js部分
1. JavaScript的『预解释』与『变量提升』 先看以下代码输出啥? var a= 1; function f() { console.log(a); var a = 2; } f(); 首先答 ...