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 ...
随机推荐
- day116:MoFang:显示背包解锁/未解锁格子数&显示背包的道具物品&背包解锁
目录 1.显示背包的已解锁/未解锁格子数 2.显示背包中的道具物品 3.用户购买道具的时候,判断背包存储是否达到上限 4.道具也可以使用积分购买 5.在商城界面根据金额/积分显示不同商品 6.背包解锁 ...
- uni-app阻止事件向父级冒泡
在官网找到的就只有这个方法,但是我放在app项目里并不支持,所以就想到vue的阻止事件冒泡的方法,现在分享,免得大家踩坑 <view class="parent" @ ...
- LeetCode430 扁平化多级双向链表
您将获得一个双向链表,除了下一个和前一个指针之外,它还有一个子指针,可能指向单独的双向链表.这些子列表可能有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示. 扁平化列表,使所有结点 ...
- Thread线程源码解析,Java线程的状态,线程之间的通信
线程的基本概念 什么是线程 现代操作系统在运行一个程序的时候,会为其创建一个进程.例如,启动一个Java程序,操作系统就会创建一个Java进程.线代操作系统调度的最小单位是线程.也叫做轻量级进程.在一 ...
- AttGAN: Facial Attribute Editing by Only Changing What You Want 论文阅读笔记和AttGan的pytorch代码实现
1.总体框架 上面的过程用详细描述即是 Test阶段: Train阶段: 由于我们无法得知编辑后的image,所以显而易见人脸属性编辑是一个无监督问题,而对于我们的xa需要获得关于b的属性,故利用at ...
- 十七:SQL注入之二次加解密,DNS注入
加解密,二次,DNSlog注入 注入原理,演示案例,实际应用. less-21关,base64进行解密 encode加密decode解密 cookie处注入 判断加密算法,然后进行注入 less-24 ...
- Python基础语法6-冒泡排序
用for循环实现冒泡排序(升序): array = [3,2,1] for i in range(len(array) - 1, 0, -1): for j in range(0, i): if ...
- zookeeper读取事务日志、快照日志
zookeeper的事务日志的格式如 log.xxx, xxx表示顺序序号 我使用的zookeeper版本:3.5.5 事务日志 执行命令 java -cp .:/tmp/zookeeper-3.5. ...
- libnum报错问题解决
之前在使用python libnum库时报错 附上报错内容 Traceback (most recent call last) : File" D:/python file/ctf/RSA共 ...
- SAP GUI用颜色区分不同的系统
对于经常打开多个窗口的SAP用户,有时候可能同时登录了生产机.测试机和开发机,为了避免误操作,比如在测试要执行的操作,结果在生产机做了,结果可想而知. 虽然可以通过右下角查看再去判断,但是总是没有通过 ...