最近开始学习java基本技术,在这里总结一下我学到的内容:
1、Java的基本历史
java起源于SUN公司的一个GREEN的项目,其原先目的是:为家用消费电子产品发送一个信息的分布式代码系统,通过发 送信息控制电视机、冰箱等。
2、Java的版本分类,以及每种版本的应用方向
三种版本:
JME:是面向内存有限的移动终端. 为消费性产品设计的;
JSE: 是SUN公司针对桌面开发和低端商务计算方案开发的版本。为笔记本电脑、PC机设计的;
JEE: 是一种利用JAVA 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。 为企业级的、服务 器端的高端应用而设计的;
3、描述 Java虚拟机的功能
(1)通过 ClassLoader 寻找和装载 class 文件
(2)解释字节码成为指令并执行,提供 class 文件的运行环境
(3)进行运行期间垃圾回收
(4)提供与硬件交互的平台
4、java编程语言的八种基本数据结构
布尔型(boolean)、字节型(byte)、短整型(short)、整形(int)、长整型(long)、字符型(char)、
单精度浮点型(float)、双精度浮点型(double)。
5、变量:内存中的一个区域,用来存放同一类型,可重复使用,变量的有效范围在一对{}中有效。
声明变量的格式有三种方法:
(1)、声明变量
类型+变量名
(2)、声明的同时给变量赋值
类型+变量名=初始化值
(3)、给已经声明过的变量赋值
变量名=初始化值
6、什么是标示符?
标识符:是赋予变量、类、方法的名称。
//标识符是标识变量、类或方法的有效字符序列
标示符定义的规则?
(1) 首字母只能以字母、下划线、$开头,其后可以跟字母‘下划线、$和数字配置CLASSPATH
(2) 表示符不能是关键字,不能以数字开头。
(3) 标识符区分大小写
7、什么是关键字?
:关键字就是编程语言与机器语言的编码约定
编程中有哪些常见的关键字?
1)、用于定义访问权限修饰符的关键字
public(公共的)、(不写)默认值、protected(受保护的)、private(私有的)
2)、用于定义类、函数、变量修饰的关键字
abstract(抽象的)、final(常量)、static(静态的)、synchronized(同步的)
3)、用于定义类与类之间的关键字
extends(继承)、implements(实现)
4)、用于建立实例及引用实例,判断实例的关键字
new(用于创建新对象)、this(当前的)、super(父类的)、instanceof(判断)
5)、用于异常处理的关键字
try、catch、finally、throw、throws(抛出)
6)、用于包的关键字
package(包)、import(导入)
8、了解补码:计算机中的二进制是以补码的形式存在的;一个正数的补码和其原码形式是相同的;负数的补码是该数的绝对值 的二进制数,按位取反加一。还有二进制补码数值的最高位为符号位,正数最高位0,负数最高位为1。
9、理解自动类型转换与强制类型转换:
自动类型转换:容量小的类型自动转换成容量大的类型。如byte,int,short-->float-->long-->double
byte,short,int不会相互转换,但三者在运算时会转换成int类型运算。
强制类型转换:容量大数据类型转换成容量小的数据类型时,要加上强制转换符。
long n=100L;
int m=(int)n;
强制类型转换有可能造成精度损失或数据溢出。
注意:Boolean类型不能转换成任何其他类型。
10、转义字符
\n :换行,将光标从单前位置移到下一行
\r :回车,将光标移到本行开头
\\ :代表一个反斜线字符
\' :代表一个单引号字符
\" :代表一个双引号字符
\t :水平制表,跳到下一个tab
今天先总结到这里,有什么不对的地方请各位大神指出。谢谢!
java学习笔记(1)的更多相关文章
-
0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
-
0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
-
Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
-
0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
-
0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
-
0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
-
0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
-
《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
-
Java学习笔记-多线程-创建线程的方式
创建线程 创建线程的方式: 继承java.lang.Thread 实现java.lang.Runnable接口 所有的线程对象都是Thead及其子类的实例 每个线程完成一定的任务,其实就是一段顺序执行 ...
-
0013 Java学习笔记-面向对象-static、静态变量、静态方法、静态块、单例类
static可以修饰哪些成员 成员变量---可以修饰 构造方法---不可以 方法---可以修饰 初始化块---可以修饰 内部类(包括接口.枚举)---可以修饰 总的来说:静态成员不能访问非静态成员 静 ...
随机推荐
-
PHP导入导出excel表格图片(转)
写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了.呵呵.(COM方式不讲了,这种可读的太多了,我也写过利用wp ...
-
Python: Windows 7 64位 安装、使用 pymongo 3.2
官网tutorial: http://api.mongodb.com/python/current/tutorial.html 本教程将要告诉你如何使用pymongo模块来操作MongoDB数据库. ...
-
C遇到的问题
1. stdout-------printf输出到stdout,并在终端打印 stderr--------perror错误输出到stderr,并在终端打印 2. usleep(1)//代表一微妙 sl ...
-
php用压栈的方式,循环遍历无限级别的数组(非递归方法)
php用压栈的方式,循环遍历无限级别的数组(非递归方法) 好久不写非递归遍历无限级分类...瞎猫碰到死老鼠,发刚才写的1段代码,压栈的方式遍历php无限分类的数组... php压栈的方式遍历无限级别数 ...
-
C#获取数据库中的Instance
如果我现在要写个代码生成器,连接数据库,那你得知道有哪些Database存在吧,不然咋整? 在VS中我们添加一个ADO.NET的实体模型 在选择数据库名称的时候就是获取了数据库中Database In ...
-
串口屏之------Usart GPU 使用手册
Usart GPU 使用手册 文档更新日期 更新内容 2014-9-10 C编程sprintf问题 2014-8-8 版本程序1.0,升级了自定义波特率部分 ------ 原始版本 第一部分:基础应用 ...
-
Visual Studio 2013 IIS Explorer 停止调试继续访问站点
升级到2013后,在做调试的时候默认调试服务器是 IIS Explorer,当终止调试的时候再次访问调试站点时已经无法访问了.此时想预览一下感觉很不方便. 为了能够预览可以参考一下配置: Tools ...
-
web前端学习笔记
web前端学习笔记(CSS盒子的定位) 相对定位 使用相对定位的盒子的位置常以标准流的排版方式为基础,然后使盒子相对于它在原本的标准位置偏移指定的距离.相对定位的盒子仍在标准流中,它后面的盒子仍以标准 ...
-
springBoot中的定时任务
springBoot中的定时任务 1:在Spring Boot的主类中加入@EnableScheduling注解,启用定时任务的配置 2:新建ScheduledTasks任务类 : package c ...
-
linux 设置与网络同步的时间
#设置linux时间 与网络时间同步安装命令yum install -y ntp同步网络时间ntpdate ntp1.aliyun.com