概述与环境搭建
Java 的由来
①sunMicrosybtem 于1995年推出java面向对象的程序设计语言
1995年5月23日问世,由sun公司green项目组负责,组长叫做 James Gosling,也就是java之父
② 1996年发布JDK 1.0
③1999年发布J2SE 、J2EE、J2ME
④2005年更名为Java SE、java EE 、 java ME
⑤2009年java被oracle 收购
⑥2011年由oracle发布java 7.0
⑦2014年由oracle发布java 8.0
⑧…….
JDK的下载
https://www.oracle.com/java/technologies/downloads/#jdk17-windows
下载的时候会提醒登录 注册账号就可以下载了
Java 的语言的特点
一 面向对象(使用计算机模拟现实世界,解决现实问题,贴近人类思维模式)
二 简单(相对C(面向过程)、C++(面向对象)、C#,不易造成内存溢出,减少代码量、代码可读性强)
三 跨平台(操作系统、服务器、数据库)
计算机的执行机制
编译执行:
将源文件编译成机器码,一次编译,多次执行。执行效率高,不可跨平台。
解释执行:
将源文件被一行一行解释,一行一行执行,不同的操作系统具备不同的解释器。执行效率低,可以跨平台。
java先编译、再解释:
·将源文件编译成字节码文件(平台中立文件.class),再将字节码文件进行解释执行。
·java的设计理念:Write Once Run Anywhere
由java源文件编译出来的字节码文件可以在任意平台上运行,java之所以有这种跨平台的特点,要归功于java虚拟机,java虚拟机屏蔽了底层操作系统的差异。
名词解释
JVM (java Virtual Machine)虚拟机
· 使用软件在不同的操作系统中,模拟相同的环境
JRE (Java Runtime Environment)运行环境:
· 包含JVM和解释器,完整的java运行环境。(能够运行.class文件)
JDk (java Development Kit)开发环境:
· 包含JRE+类库+开发工具包(编译器+调试工具)(可以编译.class 文件)
配置环境变量
Java_home
无大小写区分
通知其他应用,本机jdk已安装JDK,及安装位置。
变量名:Jdk的目录
CLASSPATH 类路径
“.”表示当前目录,避免全计算机查找。如果需要更换目录,就把当前目录代替.,即可。
变量名:一个.
Jdk的文件夹下的bin目录
Bin里面装了命令和工具,可以在任何目录里运行javac。这是windows的要求。
DOS命令操作
第一个java应用程序
创建以.java为结尾的源文件
编译与运行
将.java文件编译为.class文件,并且是检验语法的过程,
如果没问题,不报错;如果错误,会显示第几行有什么错误;
.Java文件编译后的文件名为:类.class文件;一个代码可以有无数个类,那么会生成无限个:.class文件,所以运行时需要运行不同的 类.Class文件
Pass:如果不区分大小写运行java,则会发生找不到这个类。
.当.class文件运行成功
①:代码编写成功;
②:classpath 环境变量编辑成功。
一个源文件可以有无限个类,但是只能有一个公开类(public class),因为源文件名必须与公开类类名一致(区分大小写。)
类的阐述(源文件中书写多个类)
① 同一个源文件中可以定义多个类。
② 编译后,每个类都会生成独立的 .class文件。
③ 一个类中,只能有一个主函数,每个类都可以有自己的主函数。
Package(包)
·作用:类似于文件夹,用于管理字节码(.class)文件;
·语法:package 包名;
·位置:必须写在源文件的第一行;
·带包编译:javac –d . 源文件名称.java(自动生成目录结构);
·带包运行:java 包名.类名(包名+类名又称全限定名);
·采用域名倒置的规则(给包取名规则):www.Ltaxy.com.cn→cn.com. Ltaxy.xxx
·例如:cn.com.Ltaxy.departmentl.group2.project3.utility.MyUtils
导包 (Import)
Import 语句:导包 引入包,声明语句,本程序郑重声明,程序中用到的List指的是java.util.List,所以下方的第七行java.util可以不用写,第八行的java.util也可以不写(需要写import java.util.ArrayList)。
任何一个java程序默认有一个 import java.lang.*;
程序的基本结构
程序基本由以上
包(package)package 包名;
导包(import)import java.lang.*;
类(class) 公开类(pubic class)
顺序不能颠倒,不能写错,再有内容,就是写在类里面。
编码规范
1 书写格式
·层级之间必须缩进 (Tab:一个制表位)
·一行只能写一句代码
2 代码注释
·单行注释 : // 内容 写在代码里
·多行注释 :/* 内容 / 写在代码里
·文档注释 :/* 内容 */ 写在类名前 或者 主函数之前。可以只给别人看到注释不看代码,生成外部文档:
Javadoc –d doc 类名.java
语法是:Javadoc –d doc 类名.java
然后会有文件内找到 index.html ,打开即可看到。
注释要求;
注释量不可低于代码量,注释需要详细,或者有作者,部门,邮箱,编写日期,描述函数作用、函数返回值、参数。。。。
函数也是代码产品,所以要有产品要求。
3 标示符命名
包 类 变量 常量 函数 的名字 ,统称为标示符。
语法规定:
·可以由:字母(汉字)、数字(不可开头)、_(下划线)、¥(货币符号),没有长度要求,区分大小写;
·不能与关键字(特殊含义的字,java有51个)、保留字(go to 、const 两个,因为在C语言中是关键字)重名;
·ture false null ,这三个是java中固定取值
以上都为小写要求,如果使用大写,则可以。
约定俗成:
·望文生义 见闻生义
·类名由一个单词或多个单词组成,每个单词的首字母大写(pascal)
·函数名、变量名由一个或多个单词组成,首字母小写,拼接词首字母大写(camel)
·包名全小写,只可使用特殊符号“.”,并且不以“.”开头或结尾
·常量名大写,多个单词用“_”下划线连接