我这些学习笔记,记录的都是我自己认为的知识点,可能以后再看的时候还要翻书,但是可以用来定位到准确的书中示例的位置,减少翻书重找的时间,利于自身知识体系的搭建。 self-transcendence
第1章 初识java
1.1 java简介
1.1.1 什么是java
java 1995 sun公司 面向对象的程序设计语言 (java之父)sun研究院院士詹姆斯*戈士林博士 并且完成了原始的编译器和虚拟机
是解释方式来执行的语言
是跨平台的程序设计语言(一次编译,到处运行)
java代码的编译和运行过程
程序源代码 编译器 字节码 jvm(java虚拟机) 机器码01001… 计算机
1.1.2 java的应用领域
桌面应用系统开发
嵌入式系统开发
电子商务应用
企业级应用开发
交互式系统开发
多媒体系统开发
分布式系统开发
we应用系统开发
1.1.3 java版本
应用范围分为三个版本,即Sun ONE(Open Net Environment)体系
1.Java SE
java的标准版,主要用户桌面级应用程序开发,是java的基础,包含java语言基础、JDBC操作、I/O(输入/输出)、网络通信、多线程等技术。
2.Java EE
java企业版,用于企业级分布式网络程序开发,如电子商务和ERP(企业资源规划)系统,其核心为EJB(企业Java组件模型)
3.Java ME
嵌入式系统开发,掌上电脑、手机等
1.1.4 怎样学习Java
1.明确自己的学习目标和大的方向,选择并锁定一门语言,按照自己的学习方向努力学习,认真研究
2.初学者不用看太多书,先找本相对基础的书系统的学习
3.了解设计模式,开发程序必须编写程序代码,这些代码必须具有高度的可读性,这样编写的程序才有调试、维护和升级的价值。学习设计模式,能够更好的把握项目的整体结构
4.不要死记语法,掌握基本语法,大概了解一些功能即可
5.多实践,多思考,多请教
6.不要急躁
7.遇到问题要尝试自己解决,可以提高自己的程序调试能力。
8.多查阅资料
9.多阅读别人的代码,分析作者的编程思想和设计模式
1.1.5 java api 文档
api文档中包括 类的继承结构,成员变量,成员方法,构造方法,静态成员的详细说明
1.2 java语言的特性
1.2.1 简单
java使用接口取代了多重继承,取消了指针,实现了垃圾自动收集,有丰富的类库和api文档以及第三方开发包,有大量的java开源项目
1.2.2 面向对象
java提倡万物皆对象,语法中不能在类外面定义单独的数据和函数,即java语言最外部的数据类型是对象,所有的元素都要通过类和对象来访问
1.2.3 分布式
java的分布式包括操作分布和数据分布,操作分布是在多个不同的主机上布置相关操作,数据分布是将数据分别存放在多个不同的主机上。Java可以凭借URL(统一资源定位符)对象访问玩网络对象,访问方式与访问本地系统相同
1.2.4 可移植性
java程序具有与体系结构无关的特性,可以方便的移植到网络上的不同计算机中。
1.2.5 解释型
任何移植了java解释器的计算机或者其他设备都可以使用java字节码进行解释执行
1.2.6 安全性
java删除了类似c的指针和内存释放等语法,有效的避免了非法操作内存。java代码要经过代码效验、指针效验等很多测试步骤才能运行,所以未经允许的java程序不可能出现损害系统平台的行为,而且java可以编写防病毒和防修改的系统。
1.2.7 健壮性
java程序设计的目标之一,是编写多方面的可靠的应用程序,java将检查程序在编译和运行时的错误,并消除错误。类型检查能帮助用户检查出许多在开发早期出现的错误。
1.2.8 多线程
多线程机制能够使应用程序在同一时间执行多项任务,并且相应的同步机制可以保证不同线程能够正确的共享数据。多线程能带来更好的交互能力和实时行为
1.2.9 高性能
java编译的字节码是在解释器中运行的,所以他的速度比很多交互式应用程序提高了很多,另外字节码可以再程序运行时被翻译成特定的平台及其指令,从而进一步提高运行速度
1.2.10 动态
可以动态调整库中方法和增加变量,客户端却不用任何更改
1.4 记事本运行java代码
在记事本里面写上正确的java代码
public class Hello{
public static void main(String[] args){
System.out.println(“hello java”);
}
}
改记事本的后缀为.java
在cmd中找到记事本所在的位置,输入javac +空格+记事本名字+.java,.class文件就编译出来了
然后在cmd中输入java+空格+记事本名字,java程序就运行了