Java初体验
参考书籍「Java语言程序设计基础篇」
比特与字节
计算机中只有0和1,二进制,即比特(bit,二进制数);
字节(byte)是最小的存储单元,每个字节有8个比特组成
即:1byte=8bit
各种数据被编码成字节序列;
编码,解码,编码模式(schema),ASCII编码模式
编码模式是一系列的规则,控制计算机将字符、数字、和符号翻译成计算机可以实际工作的数据
千字节 kilobyte KB,≈ 10^3 byte
兆字节 megabyte MB,≈ 10^6 byte
千兆字节 gigabyte GB,≈ 10^9 byte
万亿字节 terabyte TB,≈ 10^12 byte
内存
内存由一个有序的字节序列组成,用于存储程序及程序所需要的数据
可以将内存想象成计算机执行程序的工作区域。
一个程序和他的数据在被CPU执行前必须移动到计算机的内存中。
每个字节都有唯一的地址。用地址确定字节的位置。
因为可以按任意顺序存取字节,所以内存也被称为随机访问存储器(random-access memory,RAM)
计算机的内存(RAM)是一种易失的数据保存形式:断电时存储在内存中的信息就会丢失。
程序和数据被永久地存放在存储设备上
磁盘驱动器;光盘驱动器;USB闪存驱动器 (Drive驱动)
机器语言→汇编语言→高级语言
用高级语言编写的程序称为源程序(source program)或源代码(source code)
需要将源程序通过解释器或编译器翻译成可执行的机器代码,才能被计算机运行
多道程序设计multiprogramming:允许多个程序通过共享CPU同时运行
多线程multithreading:允许单个程序同时执行多个任务(字处理程序允许用户在编辑文本的同时进行保存文本,编辑和保存是同一应用程序地两个不同任务)
多处理(并行处理parallel processing):使用一个以上处理器共同并行执行子任务,并将结果合并得到整个任务的结果(栗子:外科手术多名医生同时给一个病人做手术)
Java语言规范和Java API定义Java的标准
Java语言规范(Java language specification)是对语言的技术定义,包括语法和语义
应用程序接口(Application program interface,API)也成为库,包括为Java程序而预定义的类和接口
Java开发工具包(Java development toolkit,JDK);集成开发环境(Intergrated development environment,IDE)
开始 Java program:
Java从类(class)中的main方法开始执行
第1行,welcome是一个类,每个Java程序至少有一个类,每个类都有一个名字,以大写字母开头
第2行,定义主方法(main method),程序由main方法开始执行,一个程序可以包含多个方法
-method是包含语句的结构体,该例中main method包含了System.out.println语句
-字符串(string)用双引号引起来;每条语句以分号结束。
第3行,注释(comment),不是程序设计语句,会被编译器忽略掉;//双斜杠四行注释,line comment;/* 和 */,块注释,block comment
Java初体验的更多相关文章
- protobuf(Protocol Buffers)java初体验
因为项目须要所以简单的研究了下protobuf.我也是參照网上的博客,所以大部分内容我也就不反复造轮子了.首先protobuf介绍点击这里,使用介绍点击这里,使用demo看这里. 我个人的第一个样例也 ...
- protobuf初体验
概念介绍 Protocol buffers 是google公司的与语言无关.与平台无关的.可扩张的为序列化话结构数据,就像xml一样,办事更加的小巧.快速.简单.Protocol buffers 目前 ...
- 【阿里云产品公测】消息队列服务MQS java SDK 机器人应用初体验
[阿里云产品公测]消息队列服务MQS java SDK 机器人应用初体验 作者:阿里云用户啊里新人 初体验 之 测评环境 由于MQS支持外网访问,因此我在本地做了一些简单测试(可能有些业余),之后 ...
- JAVA 11初体验
JAVA 11初体验 随着JAVA没半年发布一次新版本,前几天JAVA 11隆重登场.在JAVA 11中,增加了一些新的特性和api, 同时也删除了一些特性和api,还有一些性能和垃圾回收的改进. 作 ...
- cucumber java从入门到精通(1)初体验
cucumber java从入门到精通(1)初体验 cucumber在ruby环境下表现让人惊叹,作为BDD框架的先驱,cucumber后来被移植到了多平台,有cucumber-js以及我们今天要介绍 ...
- SpringCloud初体验:五、Sidecar 将 PHP 这类非 Java 生态语言的服务接入 Spring Cloud
先起一个 Sidecar 服务,一个PHP服务一个应用,和PHP服务部署在同一台机子,通过 localhost 访问,这样就解决了网络开销,相当于本地进程间调用 Sidecar 服务比较简单, 1.这 ...
- Serverless 初体验:快速开发与部署一个Hello World(Java版)
昨天被阿里云的这个酷炫大屏吸引了! 我等85后开发者居然这么少!挺好奇到底什么鬼东西都是90.95后在玩?就深入看了一下. 这是一个关于Serverless的体验活动,Serverless在国内一直都 ...
- Java高级特性1_流库_初体验
Java高级特性流库_初体验 面对结果编程 在编程里, 有两种编程方式, 一种是面对过程编程, 一种是面对结果编程. 两者区别如下 面向过程编程 面向过程编程需要编程程序让程序依次执行得到自己想要的结 ...
- Apache Beam入门及Java SDK开发初体验
1 什么是Apache Beam Apache Beam是一个开源的统一的大数据编程模型,它本身并不提供执行引擎,而是支持各种平台如GCP Dataflow.Spark.Flink等.通过Apache ...
随机推荐
- user&group_management.md
登录shell bin/bash sbin/nologin useradd 的参数 -c comment 用户的注释性信息 -u UID 指定用户的UID -g initia ...
- PHPstorm 配置主题
1.首先先去下载自己喜欢的主题:http://www.phpstorm-themes.com/ 但是在下载的时候会发现一个问题,在点击下载后,并没有下载,而是会打开这个文件(不同的浏览器不同)但是如果 ...
- LeetCode 371两数之和
题目描述: 不使用运算符 + 和 - ,计算两整数 a .b 之和. 思路: 既然不能使用运算符操作就要考虑到,位运算的加法. 加法有进位的时候和不进位的时候 ...
- Docker学习笔记之搭建Docker私有仓库
Docker仓库服务器名为Docker注册(registry)服务器.可以使用docker push命令将镜像上传到注册服务器,也可以使用docker pull命令下载服务器的镜像. Docker注册 ...
- oracle常用hint添加
1.视图添加索引 /* Formatted on 2020/1/6 下午 04:46:37 (QP5 v5.163.1008.3004) */ SELECT /*+index(VIEW_NAME.TA ...
- STM32驱动LCD原理
TFTLCD即薄膜晶体管液晶显示器.它与无源TN-LCD.STN-LCD的简单矩阵不同,它在液晶显示屏的每一个像素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性 ...
- PAT Advanced 1004 Counting Leaves
题目与翻译 1004 Counting Leaves 数树叶 (30分) A family hierarchy is usually presented by a pedigree tree. You ...
- win32 修改Edit控件文本颜色与背景色
#define WM_CTLCOLORMSGBOX 0x0132 #define WM_CTLCOLOREDIT 0x0133 //编辑控件Edit #define WM_CTLCOLORLISTBO ...
- 【pytest】(十二)参数化测试用例中的setup和teardown要怎么写?
还是一篇关于pytest的fixture在实际使用场景的分享. fixture我用来最多的就是写setup跟teardown了,那么现在有一个用例是测试一个列表接口,参数化了不同的状态值传参,来进行测 ...
- three.js cannon.js物理引擎之Heightfield
今天郭先生说一说cannon.js物理引擎之Heightfield高度场,学过场论的朋友都知道物理学中把某个物理量在空间的一个区域内的分布称为场,高度场就是与高度相关的场,而cannon.js物理引擎 ...