1 Java的相关介绍(☆)
1.1Java语言(☆)
自然语言:汉语 英语 拉丁语 日语 俄语..... 人与人交流沟通的表达方式
计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 c c++ c# python php....
Java语言是美国Sun公司(Stanford University Network)在1995年推出的计算机语言
Java之父:詹姆斯·高斯林(James Gosling)
2009,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可:https://www.oracle.com
1.2 Java的应用(☆)
Java EE :企业级应用服务器,大型互联网应用服务器
Android : 安卓手机应用开发 大数据 : 数据分析
1.3 java的优势(☆☆)
1. 面向对象语言
2. 开源的
3. 跨平台
-
java的跨平台 是依赖jvm来跨平台的。
-
跨平台的好处:不但方便了用户, 用户不需要选择性的去下载对应的操作系统的软件了,同时开发人员也提高了开发效率(不需要再开发三个qq了 只需要开发一个qq就可以了)
1.4 jdk 和jre 和 jvm的关系(☆☆)
jdk: 开发工具: 编译工具 javac.exe 打包工具 jar.exe 帮助文档工具 javadoc.exe
jre:你的电脑上只有jre 就可以运行java程序了。
jvm : 程序的运行环境 解析指令 内存 解析语法 ... 核心。
核心类库: String System
1.5 jdk的下载安装(☆)
-
jdk安装版本 我要求 11.0 你安装的 jdk8以后的就可以。
-
一个电脑上 可以安装 很多个版本的jdk 只要安装目录不同就可以了。至于以后你用哪一个, 环境变量里面配置哪一个就可以了。
-
以后你只要安装 开发类的软件, 安装路径里面尽量不要有中文和空格。
2 Helloworld程序(★★★★★)
2.1 dos命令(☆☆☆):
cls 清屏
dir 展示 目录中有什么内容
dir 是 directory 目录的前三个首字母
d: 切换到d盘
cd : 切换目录 c change d directory 每个目录(除了跟目录) 都有 两个额外的目录 . 和 .. . 代表的是当前目录 .. 代表的是 上一级目录
cd. 进入当前目录
cd.. 回退上一级目录
cd / 回退到根目录 有一个目录 叫做 / 目录 所有的操作系统 根目录都是 /目录
exit 退出
2.2 配置环境变量(★★★★):
命令: 在Windows操作系统中 所有的 exe文件 都是命令, 为什么配置环境变量: 想让 jdk的bin目录下的那些 命令 比如 javac.exe java.exe ,在任意的目录下 都可以使用。 配置环境变量:如果你想让某个命令(.exe结尾的 都算是命令) 在任意的目录下都可以使用的话, 你只需要 把这个命令所在的目录 放到path里面就可以了。
2.3 Helloworld程序的步骤 (★★★★★)
需求: 在黑窗口 打印出 helloworld 字样
编写: 新建一个txt文件, 然后后缀改为.java ,注意操作系统尽量不要隐藏文件拓展名,否则无法更改拓展名。
public class Demo {
public static void main(String[] args){
System.out.println("helloworld");
}
}
注意:文件名字 和 class 后的名字 要一致。
编译:javac Demo.java 把java文件 通过 javac命令 编译成 .class文件 编译成功的标志是 生成一个class文件。 注意: 你需要先用cmd进入到 Demo.java的目录 才可以编译,否则找不到Demo.java
运行:java Demo
运行的class文件,只不过省略了.class 。 所以 必须先编译后运行。 而且还必须要编译成功。
2.4 Helloworld程序解释(☆☆☆)
//定义一个类 类的名字 Demo , java中 所有的代码 都要写在类中。 public class Demo { // 主方法 程序的入口 一个java程序 要想被 java.exe命令去执行 ,就必须有main方法(入口)
public static void main(String[] args){
// 把内容 打印到 黑窗口(控制台)中
System.out.println("helloWorld");
System.out.println("aaaa");
}
}
2.5 Helloworld常见的问题(☆☆☆)
1:public修饰下的类 类的名字 和文件名 不同 2:区分大小写 3:符号都是英文的 4:不能缺少符号。
当我们编译的时候 遇到了很多的问题。 记住 只看第一个问题。 解决完第一个问题之后重新编译。
2.6 java代码的书写习惯(☆☆):
书写代码的时候 遇到{ 换行 并且和上一行 错开一个tab键位。 遇到; 直接换行 和上一行对齐就可以了。 遇到} 需要和成对儿那个 { 的行首位置 对齐
public class Hello {
public static void main(String[] args){
System.out.println("adaf");
System.out.println("adaf");
}
}
2.7 高级记事本(☆☆)
-
editplus --- 收费
-
notepad++ 免费的
-
sublime 收费
3 Java的语法-代码的组成(★★★★★)
3.1 注释 (非必须的)(☆☆☆)
作用:1 对代码的解释说明。 给以后的自己看的 防止忘记 2 给同事看
注释都有哪些注释: 单行注释: // 这是HelloWorld // 第二行 多行注释 /* 第一行 第二行 第三行 */ /* 就写一行 气死你 */ 文档注释 /** 第一行 第二行 第三行 */
3.2 关键字 (★★★★★)
被java赋予了特殊含义的单词 就是关键字
public : 特殊含义是什么 被public修饰的 类 类名 必须要和 文件名相同
class : 类
static : 静态的
void : 方法没有返回值的
3.3 数据(★★★★★)
3.3.1 常量数据(★★★★★)
常量数据举例: 汉语说句话 张三我给你10块钱 去给我买包烟 (这其中10就是数据)
-
运行过程中 其值 不变的量 就叫做常量
-
能在代码中直接写出来的数据 就是常量数据
6种数据是能直接写出来的 整 数 10 小 数 3.14 布 尔 true false 字 符 'a' 字符串 "adfadfa" 空 null
public class ChangLiang { public static void main(String[] args) { //能直接写出来的数据 叫做 常量数据(基本数据) //整数 System.out.println(10); System.out.println(111); //小数 System.out.println(3.14); System.out.println(111.4); //字符 System.out.println('a'); System.out.println('哈'); System.out.println('%'); //System.out.println(''); //编译报错 //System.out.println('aa');//编译报错 //布尔 System.out.println(true); System.out.println(false); // 字符串 System.out.println("adfad123123fad递四方速递fad&…………(*……*)sfa"); System.out.println(""); System.out.println("mvadkjakdf"); // null // System.out.println(null); // System.out.println("大楼"); //(综合数据 ) System.out.println( "烟" ); // 20 1 2 } }
3.3.2 变量数据(★★★★★)
变量数据举例: 汉语说句话 张三我给你我的钱包 去给我买包烟 (这其中钱包就是数据)
变量的作用:
public class BianLiang1 {
public static void main(String[] args) {
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
System.out.println(20);
}
}
public class BianLiang1 {
public static void main(String[] args) {
int a = 20;
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
System.out.println(a);
}
}
数据类型:
基本类型(基本数据)
整数
byte 1个字节 -128 127
short 2个字节 -32768 32767
int 4个字节 -21亿 21亿
写一个整数常量 默认是int类型
long 8个字节 long范围>int范围
小数
float 4个字节 float范围>long范围
double 8个字节 double范围>float范围
写一个小数常量 默认是 double类型
字符
char 2个字节 char范围=short范围
布尔
boolean 1个字节 true false
引用类型(综合数据)
数组
类
接口
public class BianLiang2 {
public static void main(String[] args) {
byte b = 10;
System.out.println(b); //10
//byte c = 200; //编译报错
//System.out.println(c);
short s = 800;
System.out.println(s); //800
int a = 1000;
System.out.println(a); //1000
long lo = 9999L; //L l
System.out.println(lo); //9999
float flo = 3.14F; // F f
System.out.println(flo); //3.14
double d = 3.15;
System.out.println(d); //3.15
boolean bo = true;
System.out.println(bo); //true
//boolean boo = 10; //报错
char c = '哈';
System.out.println(c); //哈
}
}
变量定义的注意事项:
1:变量使用之前必须先赋值, 不使用可以不赋值。
class Demo {
public static void main(String[] args){
int a ;
System.out.println(a); // 编译报错
}
}
2:变量可以连续定义
public class Demo1{
public static void main(String[] args) {
int a = 10;
int b = 20;
int c = 30;
int d = 10, e = 20, f = 30;
System.out.println(d);
System.out.println(e);
System.out.println(f);
/*
int g;
System.out.println("helloworld");
g = 20;
System.out.println(g);
*/
int g, h, i;
g = 10;
h = 20;
i = 30;
System.out.println(g);
System.out.println(h);
System.out.println(i);
int j,k,m = 10;
System.out.println(j); // 编译报错
System.out.println(k); // 编译报错
System.out.println(m); //10
}
}
3:变量只在当前范围内有效。
public class Demo3 {
public static void main(String[] args) {
{
int a = 10;
}
System.out.println(a);
}
}
4:变量在同一个范围内 不能重复定义相同的名字
public class Demo2 {
public static void main(String[] args) {
int a = 10;
//int a = 20; // 重复定义相同名字的变量
a = 20; // 正确的 因为 这并不是在定义a 而是在 使用a
System.out.println(a);
}
}
public class Demo5 {
public static void main(String[] args) {
/*
{
int a = 10;
}
int a = 20;
System.out.println(a); //正确
*/
int a = 20;
{
int a = 10; //编译报错
System.out.println(a);
}
}
}
5:变量定义 long类型的数据后面加 L float类型的数据后面加 F
键盘录入变量:
import java.util.Scanner; // 第一步
public class Demo6 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // 第二步
System.out.println("亲 请您录入一个整数");
int a = sc.nextInt();
System.out.println("亲啊 您看您录入的数字 是这个吗");
System.out.println(a);
System.out.println("亲 确定请按1");
int b = sc.nextInt();
}
}
3.4 标识符(★★★★★)
java中所有的 名字 都是标识符
语法要求: 1:名字 不能是数字开头。 2: 名字 不能是关键字 3:名字 的组成里面 只能有 小写字母 大写字母 数字 $_
起名习惯: 见名知意
小驼峰 : 首字母小写 其他单词的首字母大写 int nianLing = 10; 变量名 方法名
大驼峰 : 首字母大写 其他单词的首字母大写 class HelloWorld {} 类名 接口名
峡谷先锋 : 所有字母 全部大写。 多个单词中间用下划线隔开 JAVA_HOME通过HelloWorld看 这些名字:
public class Demo {
public static void main(String[] args){
System.out.println("sadfasdfasd"); //
}
}
//Demo 类名
//main 方法名
//String 类名 jdk核心类库提供的一个类的名字
//args 变量名
//System 类名 jdk核心类库提供的一个类的名字
//out 变量名
//println 方法名
3.5 符号 (★★★★★)
基本符号
空格
{} 表示范围 里面写很多的逻辑代码
() 方法
强制类型转换
运算中
结构语句
[] 数组
, 变量隔开
. 的 调用
; 一条语句的结束
"" 字符串
'' 字符