计算机语言概述
软件开发
什么是软件
一系列按照特定顺序组织的计算机数据和指令的集合
- 常用软件
- 系统软件:Dos Window Linux Mac
- 应用软件:微信 QQ 迅雷
什么是开发
开发就是制做软件
人机交互
- 图形化界面
- 命令行方式
计算机语言
- 语言:人与人之间的沟通方式。中文,英文,日文,韩文……
- 计算机语言:人与计算机之间的交流方式。C,C++,Java语言……
java简介
java能够做什么
- 可以制作网站
- 可以做Android
- 可以做游戏
- 可以做软件
Java语言特性
- 简单易用
- 面向对象
- 安全性高
- 多线程
- 跨平台
平台相关性
我们称能够支持程序运行的硬件或软件环境为平台。
- windows系统只能运行windows的可执行文件(exe)
- linux系统只能运行linux的可执行文件
- windows的可执行文件,不能直接运行在Linux上面, 反之亦然。
跨平台
一次编译,处处运行
JRE、JDK、JVM
JRE
JRE(Java Runtime Environment):Java运行环境,如果要运行Java程序,就需要JRE的支持,JRE里包含了JVM 和核心类库。
JDK
JDK(Java Development Kit):Java开发工具,包含开发Java程序的所有工具,如 javac 和 java 等,JDK里包含JRE。
JVM
Java虚拟机(Java Virtual Machine),简称JVM,它是运行所有Java程序的虚拟计算机,好比是街机游戏的模拟器。
JVM是Java语言的运行环境,也是Java 最具吸引力的特性之一。
JVM用于读取并处理编译过的与平台无关的字节码(class)文件,从而实现Java的可移植性。
但是值得注意的是Java虚拟机是不跨平台的。也就是说在Win下得装Win版的JVM,在Linux下装Linux版的JVM。
搭建Java开发环境
下载JDK
JDK目录介绍
JDK根目录
- bin
编译器+解释+其它可执行文件 - db
JAVA DB数据库,供学习测试使用,开发不建议使用 - include
用于本地代码的头文件 - src.zip
JDK类库源代码文件 - jre
java运行环境 - lib
相关类库
安装配置环境变量
为什么要配置环境变量
在任何地方到可以使用 Java 和 javac 命令。
原理:当命令行执行命令时,会到当前目录当中找对应的程序。如果没有找到,会到环境变量里的Path找,找到了就会执行该程序,没有找到就会提示没有该程序。
如何配置环境变量
第一个Java程序Hello World
java 代码
class Hello {
public static void main(String[] args) {
System.out.print("Hello World");
}
}
1.将Java代码编写到扩展名为.java的文件当中
2.通过javac命令对该java文件进行编译,并生成一个扩展名为.class的文件
3.通过java命令对生成的class文件进行运行
我们生成字节码的名称它是跟class的名称一样的。
如果我们在calss前添加了一个public,那么你的文件名称必须得要跟class的名称保持一致
classPath
如果没有配置classPath,会自动到当前目录下去寻找指定名称的字节码
如果配置了classPath,无论在哪个目录下,都会去找配置的classPath目录下寻找指定名称的字节码。
Java执行流程
Eclipse工具
Eclipse简介
Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。
快捷键
Eclipse最全快捷键,熟悉快捷键可以帮助开发事半功倍,节省更多的时间来用于做有意义的事情。
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)
Ctrl+D: 删除当前行
Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑ 当前行和上面一行交互位置(同上)
Alt+← 前一个编辑的页面
Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)
Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性
Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
Shift+Ctrl+Enter 在当前行插入空行(原理同上条)
Ctrl+Q 定位到最后编辑的地方
Ctrl+L 定位在某行 (对于程序超过100的人就有福音了)
Ctrl+M 最大化当前的Edit或View (再按则反之)
Ctrl+/ 注释当前行,再按则取消注释
Ctrl+O 快速显示 OutLine
Ctrl+T 快速显示当前类的继承结构
Ctrl+W 关闭当前Editer
Ctrl+K 参照选中的Word快速定位到下一个
Ctrl+E 快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
Ctrl+/(小键盘) 折叠当前类中的所有代码
Ctrl+×(小键盘) 展开当前类中的所有代码
Ctrl+Space 代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)
Ctrl+Shift+E 显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)
Ctrl+J 正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没
有,则在stutes line中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)
Ctrl+Shift+J 反向增量查找(和上条相同,只不过是从后往前查)
Ctrl+Shift+F4 关闭所有打开的Editer
Ctrl+Shift+X 把当前选中的文本全部变为大写
Ctrl+Shift+Y 把当前选中的文本全部变为小写
Ctrl+Shift+F 格式化当前代码
Ctrl+Shift+P 定位到对于的匹配符(譬如{}) (从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)
下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:一般重构的快捷键都是Alt+Shift开头的了)
Alt+Shift+R 重命名 (是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
Alt+Shift+M 抽取方法 (这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
Alt+Shift+C 修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
Alt+Shift+L 抽取本地变量( 可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
Alt+Shift+F 把Class中的local变量变为field变量 (比较实用的功能)
Alt+Shift+I 合并变量(可能这样说有点不妥Inline)
Alt+Shift+V 移动函数和变量(不怎么常用)
Alt+Shift+Z 重构的后悔药(Undo)