JAVA学习摘要

简介: JAVA关键字JAVA数据类型数据类型的使用实例JAVA注释的使用    使用文档注释时还可以使用 javadoc 标记,生成更详细的文档信息:       @author 标明开发该类模块的作者       @version 标明该类模块的版本  ...

JAVA关键字

d5286f14-1bb0-4c19-aae4-24e58c8d0565.png

JAVA数据类型

e2fcc30b-0c41-46d7-aa18-ee61521e7ade.jpg

数据类型的使用实例

b89fccc5-1b2f-4cfb-bdb6-909ab1462d90.jpg

JAVA注释的使用

    使用文档注释时还可以使用 javadoc 标记,生成更详细的文档信息:

       @author 标明开发该类模块的作者

       @version 标明该类模块的版本

       @see 参考转向,也就是相关主题

       @param 对方法中某参数的说明

       @return 对方法返回值的说明

       @exception 对方法可能抛出的异常进行说明

JAVA中的比较运算符


Java 中常用的比较运算符如下表所示:

05a7c02b-eed4-4def-80ff-ea6f30a816a6.jpg

注意哦:

1、  > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

2、  == 、 != 两边的操作数既可以是数值类型,也可以是引用类型


JAVA中的条件运算符

条件运算符( ? : )也称为 “三元运算符”。

语法形式:布尔表达式 ? 表达式1 :表达式2

运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值

JAVA中运算符的优先级

38db3b1b-df19-4009-ab86-85338feac2ab.bmp
Switch语句

0ec9694d-4442-4ffc-936b-e1b743b62acf.png


1、 switch 后面小括号中表达式的值必须是整型或字符型

2、 case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2

3、 case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束

4、 可以把功能相同的 case 语句合并起来

5、 default 块可以出现在任意位置,也可以省略

JAVA中常用的方法

1. java.util.Scanner中的Scanner方法用于接受键盘的输入方法
2.java.util.Arrays中的sort方法,sort(数组名)方法是一种静态升序排序方法,to.String(数组名)方法是一种讲数组装换为字符串的方法
3.foreach操作,for(元素类型 元素变量 遍历对象){执行代码}     如:for( String hobby hobbys)其中hobbys数组,而hobby是成员。

JAVA中的方法重载

如果同一个类中包含了两个或两个以上 方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。

判断方法重载的依据:

1、 必须是在同一个类中

2、 方法名相同

3、 方法参数的个数、顺序或类型不同

4、 与方法的修饰符或返回值没有关系

静态方法


1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。如:

2f1891ac-d5ee-44d4-9b37-953f8c7dafa5.jpg

如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。如:

a1b12da4-5102-4c07-87bd-30d000cbfb20.jpg

2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量,如下所示:

3a5e668a-9fae-4f0d-a5f1-599ec33c6bfe.jpg

3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。     如:

5f524776-ea30-4ad3-8bc6-df6de319cec4.jpg

JAVA中静态初始化块


Java 中可以通过初始化块进行数据赋值。如:

d1cfe1b7-29e3-49da-9527-f2575ebeaf92.jpg

在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。

需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量

我们来看一段代码:

763706ee-0632-4e73-8110-d640bfce0c24.jpg

运行结果:

012be8dd-f438-47bf-b13e-4089a355726b.jpg

通过输出结果,我们可以看到,程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。



内部类:内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。

内部的主要作用

1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类

2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据

3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便

内部类的种类

  • 成员内部类

  • 静态内部类

  • 方法内部类

  • 匿名内部类

举例
//外部类HelloWorld
public class HelloWorld {
    
    // 内部类Inner,类Inner在类HelloWorld的内部
    public class Inner {
        
        // 内部类的方法
        public void show() {
            System.out.println("welcome to imooc!");
        }
    }
    
    public static void main(String[] args) {
        
        // 创建外部类对象
        HelloWorld hello = new HelloWorld();
        // 创建内部类对象
        Inner i = hello.new Inner();
        // 调用内部类对象的方法
        i.show();
    }
}

静态内部类

静态内部类是 static 修饰的内部类,这种内部类的特点是:

1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问 

2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员

3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();

a7344460-e9ec-4501-9523-48259536cf08.jpg

运行结果 : 942a3fe2-5c73-42dd-90fd-c4906f1e8e46.jpg

12f18aa9-776c-4342-a559-8483707f3217.png

异常处理


img_e36c65aacb07c0c3666bbdfef987a395.jpe

String方法

img_0bb05413fb1a63dadf65f6363e8ac513.jpe


img_a8d81f084a7c75c8ec31b91dfbaf16cd.jpe

img_1f5775faf09eb13338aeda7a3e8cdc58.jpe


img_808e9f98ba0b6aab71082df424a66fb4.jpe

img_7e1cc0eebbf0c2a428ccfa06d5a857b3.jpe


StringBuffer和StringBuilder

img_1c604dfef4136ec9210ca974b496424b.jpe

img_e3cdd21da6b4578293823d2e75896162.jpeimg_ff38d6c776810b32979f1c7f16854985.jpe

包装类

img_9117e82f3e3796c8d23c683f66dd7e6a.jpe

img_14491ce8657f367fb14fad4ae44ecdc0.jpe

Integer

img_54280bcb6f10ea127a68a9fd5d38768e.jpe

Strings

img_51e177233b476308ef660b5d534d18e1.jpe

img_09af3e8d47be4652cdfaf915b0b7f524.jpe

    format()方法和Date类

  img_e5f82b1d7e1aab08ce9b9e9fcfde50b3.jpe

img_2edf3afeb84f44f69b207366258c8ea2.jpe

1、 调用 SimpleDateFormat 对象的 parse() 方法时可能会出现转换异常,即 ParseException ,因此需要进行异常处理

2、 使用 Date 类时需要导入 java.util 包,使用 SimpleDateFormat 时需要导入 java.text 包

Calendar类

img_53b6b4b3b915e829389479d39114420f.jpe

其中,调用 Calendar 类的 getInstance() 方法获取一个实例,然后通过调用 get() 方法获取日期时间信息,参数为需要获得的字段的值, Calendar.Year 等为 Calendar 类中定义的静态常量。

运行结果: 

img_5b8339c43419cdb45f04ae761c41824b.jpe

Calendar 类提供了 getTime() 方法,用来获取 Date 对象,完成 Calendar 和 Date 的转换,还可通过 getTimeInMillis() 方法,获取此 Calendar 的时间值,以毫秒为单位。

Math类

Math 类位于 java.lang 包中,包含用于执行基本数学运算的方法, Math 类的所有方法都是静态方法,所以使用该类中的方法时,可以直接使用类名.方法名,如: Math.round();

常用的方法:

通过案例我们来认识一下他们的使用吧!!

运行结果:

集合的使用

集合就一个容器,将需要的的具有相同属性和相同意义的个体存在同一个集合中。

img_5d42becbf2ca4482e19152cfb7b43b84.jpe

img_aebb472854b836061f594191153996d9.jpe

img_5062adc9fa4f0edd459989696a271e23.jpe

泛型

img_3d3c8b00e4db8f4abcafd95d528fa4c8.jpe

img_c8a6a082eb8dd47917c23e2107911511.jpe

Map

img_2026bd23332dd1d8b13e9ab73061835d.jpe

img_be15b2628a68293c9a6e92732df28c88.jpe







目录
相关文章
|
6天前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
30 3
|
3天前
|
存储 安全 Java
【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro
【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro
14 3
|
3天前
|
存储 安全 Java
【用Java学习数据结构系列】探索栈和队列的无尽秘密
【用Java学习数据结构系列】探索栈和队列的无尽秘密
15 2
|
3天前
|
存储 Java 编译器
【用Java学习数据结构系列】初识泛型
【用Java学习数据结构系列】初识泛型
14 2
|
3天前
|
存储 缓存 Java
【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系
【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系
22 1
|
3天前
|
存储 搜索推荐 算法
【用Java学习数据结构系列】七大排序要悄咪咪的学(直接插入,希尔,归并,选择,堆排,冒泡,快排)以及计数排序(非比较排序)
【用Java学习数据结构系列】七大排序要悄咪咪的学(直接插入,希尔,归并,选择,堆排,冒泡,快排)以及计数排序(非比较排序)
15 1
|
3天前
|
算法 Java API
【用Java学习数据结构系列】对象的比较(Priority Queue实现的前提)
【用Java学习数据结构系列】对象的比较(Priority Queue实现的前提)
13 1
|
3天前
|
Java
【用Java学习数据结构系列】震惊,二叉树原来是要这么学习的(二)
【用Java学习数据结构系列】震惊,二叉树原来是要这么学习的(二)
14 1
|
3天前
|
算法 Java C语言
【用Java学习数据结构系列】震惊,二叉树原来是要这么学习的(一)
【用Java学习数据结构系列】震惊,二叉树原来是要这么学习的(一)
10 1
|
3天前
|
算法 安全 Java
【用Java学习数据结构系列】探索Java集合框架的无尽秘密pro
【用Java学习数据结构系列】探索Java集合框架的无尽秘密pro
12 1