java语法基础总结

ads

Java入门

01 Java特性和优势

  • 简单性

  • 面向对象性

  • 可移植性(Write Once, Run Anywhere)

  • 高性能

  • 分布式

  • 动态性(反射机制)

  • 多线程

  • 安全性(能够构建防病毒的程序)

  • 健壮性(异常机制,能够捕获异常)

02 Java的三大版本

  • JavaSE

标准版,桌面程序,控制台开发等

  • JavaME

嵌入式开发,手机,小家电等

  • JavaEE

E企业级开发,Web开发,服务器开发等

03 JDK、JRE、JVM

  • JDK

Java Development Kit

  • JRE

Java Runtime Environment

  • JVM

Java Virtual Machine




04 JDK环境变量配置


05 JAVA程序运行机制

  • 编译型:全局翻译

  • 解释型:实时更新,需要经过预编译操作


  

  

06 打印'Hello World'



1public class Hello {
2    public static void main(String[] args) {  // 快捷语法 psvm
3        System.out.println("Hello World");  // 快捷语法 sout
4    }
5}
6
7
8// Hello World

Java基础语法

01 注释

书写注释是一个非常好的习惯。

  • 单行注释

1// 这是单行注释
  • 多行注释

1/*
2    这是多行注释
3    多行注释就是我
4*/

  • 文档注释

1/**
2 * @Description Hello World
3 * @Author test
4 */




02 标识符

  • 关键字



Java所有的组成部分都需要名字。类名、变量名及方法名都被称为标识符。

标识符的名字不能和关键字冲突。


03 数据类型

  • 强类型语言

要求变量的使用严格符合规定,所有变量都必须先定义再使用。

  • 弱类型语言(Visual Basic、Javascript)


基本数据类型比较的是值,引用类型比较的是地址。


 1public class demo2 {
2    public static void main(String[] args) {
3//        String a = 10;  // int无法转换为java.lang.String
4        int num = 10;
5        String a = "Hello";     // Hello
6        System.out.println(a);
7//        num = a;  // java.lang.String无法转换为int
8        System.out.println(num);
9    }
10}

 1public class demo2 {
2    public static void main(String[] args) {
3        /*
4        * 八大基本数据类型
5        * */

6
7        // 整数
8        byte num1 = 127// 1字节  -128-127
9        short num2 = 32767// 2字节  -32768-32767
10        int num3 = 12;  // 4字节  最常用  -2147483648-2147483647
11        long num4 = 6666L// long类型要在数字后面加L
12        // 8字节  -9223372036854775808-9223372036854775807
13
14        // 小数:浮点数
15        float num5 = 1.11F// float类型要在数字后面加F
16        double num6 = 3.1415926;
17
18        // 字符
19        char name = 'A';
20        // 字符串,String不是关键字,是类
21        String named = "Jack";
22
23        // 布尔值:是 非
24        boolean flag = true;
25//        boolean flag = false;
26
27
28    }
29}

  • 什么是字节

位:bit,是计算机 内部存储 的最小单位,即10001000是一个八位的二进制数。

字节:byte,是计算机中 数据处理的基本单位,习惯上用大写的B来表示。

1B(byte,字节) = 8bit(位)

字符:是指计算机中使用的字母、数字、字和符号。


思考:32位的电脑和64位的电脑有什么区别?

1寻址能力与计算机的位数直接挂钩。
2    32位最多支持4GB,而64位支持128GB,理论上是无穷的。
3        1bit表示1
4        1Byte表示一个字节,1B=8b
5        1024B=1KB
6        1024KB=1M
7        1024M=1G

  • 数据类型拓展与面试题讲解

 1public class demo3 {
2    public static void main(String[] args) {
3        // 整数拓展 --> 进制 二进制0b 十进制 八进制0 十六进制0x
4        int i1 = 10;     // 10
5        int i2 = 010;   // 8
6        int i3 = 0x10;  // 16  0~9 A~F   即0-15
7        int i4 = 0b10;  // 2
8
9        System.out.println(i1);
10        System.out.println(i2);
11        System.out.println(i3);
12        System.out.println(i4);
13
14        System.out.println("****************************************");
15
16        /*
17         * 浮点数拓展
18         *   银行业务 --->钱
19         *       BigDecimal 类   数学工具类
20         * */
21        // float  有限离散 舍入误差 大约 接近但不等于
22        // double
23        // 最好完全避免使用浮点数进行比较
24        // 最好完全避免使用浮点数进行比较
25        // 最好完全避免使用浮点数进行比较
26        float f = 0.1f; // 0.1 f:
0.1
27        double d = 1 / 10;    // 0.1 d:0.1
28        System.out.println(f == d);   // false
29
30        float f1 = 666666666f;
31        float f2 = f1 + 1;
32        System.out.println(f1 == f2);     // true
33
34        System.out.println("****************************************");
35
36        /*
37         * 字符拓展
38         * */
39        char c1 = '中';
40        char c2 = 'a';
41
42        System.out.println(c1);
43        System.out.println((int) c1);    // 强制转换  a
44        System.out.println(c2);
45        System.out.println((int) c2);    //强制转换  97
46        // 所有的字符本质还是数字
47        // 编码 Unicode 2字节 65536-->97--A   65--a      Excel--> 2^16=65536
48        // U0000-Uffff
49        char c3 = 'u0061';
50        System.out.println(c3); // a
51
52        System.out.println("****************************************");
53
54        /*
55         * 转义字符
56         * */
57        // t  制表符  n 换行
58        System.out.println("HellotWorld");
59        System.out.println("HellonWorld");
60
61
62        System.out.println("****************************************");
63        String sa = new String("Hello");
64        String sb = new String("Hello");
65        System.out.println(sa==sb); // false
66        // 对象的比较  从内存进行分析  创建一个对象都会分配相应的内存
67        String sc = "Hello";
68        String sd = "Hello";
69        System.out.println(sc==sd); // true
70
71        System.out.println("****************************************");
72        /*
73        * 布尔值拓展
74        * */
75        boolean flag = true;
76        if (flag){
77            System.out.println("Pass");
78        }
79        // Less is more.  代码要精简易读
80    }
81}

04 类型转换

运算中,不同的类型数据转换为同一类型,然后进行运算。



 1public class demo05 {
2    public static void main(String[] args) {
3        int i = 128;
4        byte b = (byte)i; // 内存溢出
5        double d = i;
6
7        // 强制转换 --> (类型)变量  高 --> 低
8        // 自动转换 -->             低 --> 高
9        System.out.println(b);  // -128
10        System.out.println(d);  // 128.0
11
12        /*
13        * 注意点:
14        *   1.不能对布尔值进行转换
15        *   2.不能把对象类型转换为不相干的类型
16        *   3.把高容量转换为低容量采用 强制转换
17        *   4.转换的时候可能存在内存溢出或精度问题
18        * */

19
20        System.out.println("=========================");
21        System.out.println((int)23.7);  // 23
22        System.out.println((int)-32.88f);   // -32
23
24        System.out.println("=========================");
25        char c = 'a';
26        int d1 = c + 1;  // 97+1=98
27        System.out.println(d1);  // 98
28        System.out.println((char)d1);  // b
29    }
30}

05 变量

可以变化的量。



  • 变量作用域

类变量、实例变量、局部变量。



 1public class demo08 {
2    // 类变量:static
3    static double salary = 2500;
4
5
6    // 属性:变量
7
8    // 实例变量:从属于对象,类   如果不初始化  则使用这个类型的默认值 0 0.0
9    // 布尔值默认为false
10    // 除了基本类型,其余的默认值都为null
11    String name;   // 不用初始化
12    int age;
13
14
15    // main方法
16    public static void main(String[] args) {
17        // 局部变量---> 在方法内  必须声明和初始化值
18        int i = 1;  // 局部变量
19        System.out.println(i);
20        // 变量类型 变量名字 = new demo08()
21        demo08 Demo08 = new demo08();
22        System.out.println(Demo08.age); // 0
23        System.out.println(Demo08.name); // null
24
25        // 类变量  static
26        System.out.println(salary); // 2500.0
27    }
28
29    // 其他方法
30    public void add(){
31
32    }
33}

06 常量



1public class demo09 {
2    static final double PI = 3.14;      // 修饰符不存在先后顺序
3//    final static double PI = 3.14;      // 修饰符不存在先后顺序
4
5    public static void main(String[] args) {
6        System.out.println(PI); // 3.14
7    }
8}

07 变量命名规则



08 运算符



如何创建包?



二元运算符
 1package operator;       // 这里是导入包
2
3public class Demo01 {
4    public static void main(String[] args) {
5        // 二元运算符
6        int a = 10;
7        int b = 1;
8        int c = 12;
9        int d = 15;
10
11        System.out.println(a+b);    // 11
12        System.out.println(a-b);    // 9
13        System.out.println(a*b);    // 10
14        System.out.println(a/(double)c);    // 0.8333333...
15
16    }
17}

多类型加减
 1package operator;
2
3public class Demo02 {
4    public static void main(String[] args) {
5        long a = 123123123123L;
6        int b = 123;
7        short c = 10;
8        byte d = 8;
9
10        // short和byte默认不转换  转为int进行计算
11        System.out.println(a+b+c+d);    // Long
12        System.out.println(b+c+d);  // Int
13        System.out.println(c+d);    // Int
14    }
15}

关系运算符
 1package operator;
2
3public class Demo03 {
4    public static void main(String[] args) {
5        // 关系运算符返回的结果:true false
6        int a = 10;
7        int b = 20;
8        int c = 21;
9
10        System.out.println(a > b);      // false
11        System.out.println(a < b);      // true
12        System.out.println(a == b);     // false
13        System.out.println(a != b);     // true
14
15        System.out.println(c%a);    // 取余  模运算
16    }
17}

自增自减(★★★★★)
 1package operator;
2
3public class Demo04 {
4    public static void main(String[] args) {
5        // ++自增 --自减  一元运算符
6        int a = 10;
7        int b = a++;    // 执行完这行代码后,先给b赋值,再自增  先用再自增
8        // a++  a = a + 1
9        System.out.println(a);  // 11
10        // a = a + 1
11        int c = ++a;    // 执行完这行代码前,先给a自增,再给c赋值  先自增再用
12
13        System.out.println(a);
14        System.out.println(b);
15        System.out.println(c);
16
17        // 幂运算
18        double pow = Math.pow(32);    // 3^2=3*3=9
19        System.out.println(pow);    // 9.0
20    }
21}

逻辑运算
 1package operator;
2
3public class Demo05 {
4    public static void main(String[] args) {
5        // 逻辑运算符  与(and) 或(or) 非(not)
6        boolean a = true;
7        boolean b = false;
8
9        System.out.println("a && b:" + (a && b));   // 逻辑与运算
10        System.out.println("a || b:" + (a || b));   // 逻辑或运算
11        System.out.println("!(a && b):" + !(a && b));   // 逻辑非运算
12
13        // 短路运算
14        int c = 10;
15        boolean d = (c<9)&&(c++<9);
16        System.out.println(d);  // false
17        System.out.println(c);  // 10  没有执行c++  
18
19    }
20}

 1package operator;
2
3public class Demo07 {
4    public static void main(String[] args) {
5        int a = 10;
6        int b = 20;
7
8//        a += b; // a=a+b
9//        System.out.println(a);  // 30
10
11        // 字符串连接符
12        System.out.println(a+b);    // 30
13        System.out.println(""+a+b); // 1020
14        System.out.println(a+b+""); // 30
15    }
16}

条件运算符
 1package operator;
2
3public class Demo08 {
4    public static void main(String[] args) {
5        // 条件运算符   ?:
6        // x ? y : z
7        // if x==true,则结果为y,否则为z
8        int score = 80;
9        String type = score < 60 ? "不及格":"及格";
10        System.out.println(type);   // 及格
11    }
12}

09 包机制




10 JavaDoc生成文档

  • 命令行生成JavaDoc文档

生成文档命令:javadoc -encoding UTF-8 -charset UTF-8 Doc.java






 1package com.chuang.base;
2
3/**
4@author taxuebufeng
5@version 1.0
6@since 1.8
7* */

8public class Doc {
9    String name;
10    /**
11     * @author taxuebufeng
12     * @param name
13     * @return
14     * @throws Exception
15    * */

16    public String test(String name) throws Exception {
17        return name;
18    }
19}



  • IDEA生成JavaDoc文档



11.首先新建一个文件夹,用于存放要生成的Javadoc文档。
22.接下来点击IntelliJ IDEA顶部的Tools菜单,选择Generate JavaDoc选项
33.然后在弹出的界面中我们点击Output directory输入框后面的按钮
44.在弹出的选择文件夹界面中选择刚才新建的文件夹
55.接下来在底部的Locale输入框配置语言和编码集,语言用zh_CN,代表中文
6    -encoding utf-8 -charset utf-8
76.然后点击确定以后我们就等待IntelliJ IDEA给我们生成JavaDoc文档即可,等到输出栏出现如下图所示的提示代表生成完毕
87.接下来我们打开JavaDoc文件夹,找到index.html文件,点击就能看到API文档。


***************************************************************





最后编辑于:2024/1/16 拔丝英语网

admin-avatar

英语作文代写、国外视频下载

高质量学习资料分享

admin@buzzrecipe.com