Java 总结篇1
初始Java
1、Java的特点:
① 跨平台(字节码文件可以在任何具有Java虚拟机的计算机或者电子设备上运行,Java虚拟机中的Java解释器负责将字节码文件解释成特定的机器码进行运行)
② 简单的(相对于C语言来说,少了很多难懂的概念,操作也更简单了,比如垃圾回收机制)
③ 安全的(取消了强大但有危险的指针,自动内存管理机制,字节码传输过程中的加密机制PKC。运行环境提供四级安全性保障机制:字节码校验器--类装载器--运行时内存布局--文件访问限制)
④ 完全面向对象的(抽象、封装、继承、多态)
⑤ 健壮性
l Java的强制类型机制、 异常处理、 垃圾的自动收集等是Java程序健壮性的重要保证。
l 对指针的丢弃是Java的明智选择
l Java的安全检查机制使得Java更具健壮性
2、.java文件 ---> .class文件(字节码文件:采用结构中立的中间文件格式) ---> 解释
3、机器语言--> 汇编语言 --> 高级语言
4、高级语言:
① 面向过程:C、Fortran、Cobol、Pascal、Ada
② 面向对象:C++、Java、C#
5、Java历史:
① Java的发明人:James Gosling
② 为什么被发明:需要有一种应用于各种硬件的语言(嵌入式:电视盒)
③ Sun公司启动James Gosling的Green,才有了现在的Java(由于sun公司经营不善,于2009年被甲骨文收购)
6、Java三大版本:
① J2SE:Java的标准版
② J2ME:(目前应用很少)主要应用于嵌入式系统开发,如手机和PDA的编程
③ J2EE:企业版本,定义在服务器端Java2的企业版,主要用于分布式网络程序的开发,如电子商务网站
④ 其中的J2又叫“Java”,如J2SE又叫Java SE
7、跨平台语言比较(C语言和Java):
8、JDK包含JRE,JRE包含 JVM。
9、开发准备:安装JDK,安装Java开发工具,准备JDK API
10、Java开发工具:
① MyEclipse:是一款功能强大的Java EE集成开发环境
② Eclipse:免费
11、JDK帮助文档:sun公司为JDK工具包提供了一整套文档资料,是Java语言的完整说明,是编程者经常查阅的资料。
12、控制台输入的:java Helloworld(运行的是类而非class文件,所以不要再类名后加.class)
13、环境配置:java_home:目录到jdk1.8~~这个目录。path:目录到bin这个目录。(注意:配置完后有的需要重启电脑才能生效)
14、文档注释:/** */可以通过JDK提供的Javadoc命令生成程序的API文档(注意:注释不会出现在字节码文件中,即Java编译器编译时会跳过注释语句)
15、反编译软件:jd-gui.exe(原理:class--->源代码,由于编译时略过了注释,所有反编译就不会生成注释了)
16、调试Debug:
① 查看程序的执行流程
② 调试程序(F6:下一步)
Java 总结篇1的更多相关文章
- Java提高篇——对象克隆(复制)
假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short, ...
- Java提高篇(三三)-----Map总结
在前面LZ详细介绍了HashMap.HashTable.TreeMap的实现方法,从数据结构.实现原理.源码分析三个方面进行阐述,对这个三个类应该有了比较清晰的了解,下面LZ就Map做一个简单的总结. ...
- Java提高篇(三二)-----List总结
前面LZ已经充分介绍了有关于List接口的大部分知识,如ArrayList.LinkedList.Vector.Stack,通过这几个知识点可以对List接口有了比较深的了解了.只有通过归纳总结的知识 ...
- Java提高篇(三一)-----Stack
在Java中Stack类表示后进先出(LIFO)的对象堆栈.栈是一种非常常见的数据结构,它采用典型的先进后出的操作方式完成的.每一个栈都包含一个栈顶,每次出栈是将栈顶的数据取出,如下: Stack通过 ...
- java提高篇(三十)-----Iterator
迭代对于我们搞Java的来说绝对不陌生.我们常常使用JDK提供的迭代接口进行Java集合的迭代. Iterator iterator = list.iterator(); while(iterator ...
- java提高篇(二九)-----Vector
在java提高篇(二一)-–ArrayList.java提高篇(二二)-LinkedList,详细讲解了ArrayList.linkedList的原理和实现过程,对于List接口这里还介绍一个它的实现 ...
- Java提高篇(二八)------TreeSet
与HashSet是基于HashMap实现一样,TreeSet同样是基于TreeMap实现的.在<Java提高篇(二七)-----TreeMap>中LZ详细讲解了TreeMap实现机制,如果 ...
- Java提高篇(二七)-----TreeMap
TreeMap的实现是红黑树算法的实现,所以要了解TreeMap就必须对红黑树有一定的了解,其实这篇博文的名字叫做:根据红黑树的算法来分析TreeMap的实现,但是为了与Java提高篇系列博文保持一致 ...
- Java提高篇(二六)-----hashCode
在前面三篇博文中LZ讲解了(HashMap.HashSet.HashTable),在其中LZ不断地讲解他们的put和get方法,在这两个方法中计算key的hashCode应该是最重要也是最 ...
- java提高篇(二四)-----HashSet
在前篇博文中(java提高篇(二三)-----HashMap)详细讲解了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素. ...
随机推荐
- 深度学习面试题05:激活函数sigmod、tanh、ReLU、LeakyRelu、Relu6
目录 为什么要用激活函数 sigmod tanh ReLU LeakyReLU ReLU6 参考资料 为什么要用激活函数 在神经网络中,如果不对上一层结点的输出做非线性转换的话,再深的网络也是线性模型 ...
- SelectKBest
https://www.e-learn.cn/content/python/2198918from sklearn.feature_selection import SelectKBest,f_cla ...
- Cheat Engine TUTORIAL 教程 (8个步骤)
https://www.cnblogs.com/ae6623/archive/2011/04/16/4416874.html https://www.52pojie.cn/thread-828030- ...
- MyBatis 示例之存储过程
存储过程在数据库中比较常见,虽然大多数存储过程比较复杂,但是使用 MyBatis 调用时,用法都一样,因此我们这一节使用一个简单的存储过程来了解 MyBatis 中存储过程的使用方法. 基本准备 存储 ...
- Vue中的路由 以及默认路由跳转
https://router.vuejs.org/ vue路由配置: 1.安装 npm install vue-router --save / cnpm install vue-router --sa ...
- windows nginx重启脚本.bat
在nginx.exe目录下新建txt文件写入 @echo offtaskkill /f /fi "IMAGENAME eq nginx.exe"start nginx.exe#pa ...
- python获取风和天气城市数据 ID
import requestsurl='https://cdn.heweather.com/china-city-list.csv'strhtml=requests.get(url)strhtml.e ...
- SQLite数据库数据类型详解
数据类型 类型 描 述 bit 整型 bit 数据类型是整型,其值只能是0.1或空值.这种数据类型用于存储只有两种可能值的数据,如Yes 或No.True 或Fa lse .O ...
- 【DataBase】Hsqldb的简单使用
介绍 HSQLDB是一个开放源代码的JAVA数据库,其具有标准的SQL语法和JAVA接口,它可以自由使用和分发,非常简洁和快速的.具有Server模式,每个程序需要不同的命令来运行. HyperSQL ...
- 【html】window.open()被部分浏览器拦截问题
一.原因:1.因为在chrome的安全机制里面,非用户触发的window.open方法,是会被拦截的: 二.什么情况下不会被拦截或会被拦截? 1. $('#btn').click(function ( ...