当前位置:首页 » 《休闲阅读》 » 正文

JavaSE 总复习:夯实基础,迈向进阶之路

4 人参与  2024年12月07日 12:01  分类 : 《休闲阅读》  评论

点击全文阅读


在这里插入图片描述
我的个人主页

一、数据类型与变量

二、控制语句

三、数组
四、面向对象编程(OOP)
五、异常处理
六、常用类库
七、输入输出流
八、总结

在 Java 编程的学习旅程中,JavaSE(Java 标准版)是基石般的存在。它涵盖了丰富的基础知识和核心概念,对深入学习 Java 后端开发、安卓开发等领域起着至关重要的作用。以下将对 JavaSE 的重点知识进行全面复习总结。
(一)基本数据类型
Java 有 8 种基本数据类型,分别是:
整型:byte(1 字节,-128 到 127)、short(2 字节)、int(4 字节)、long(8 字节,需在数值后加L或l)。例如:int num = 10;
浮点型:float(4 字节,需在数值后加F或f)、double(8 字节)。如:double pi = 3.14;
字符型:char(2 字节,用单引号括起来的单个字符)。像char ch = ‘A’;
布尔型:boolean(只有true和false两个值)。
(二)引用数据类型
包括类、接口、数组等。例如创建一个字符串对象:String str = “Hello”;
(三)变量声明与初始化
变量在使用前必须先声明,声明格式为数据类型 变量名。可以在声明时进行初始化,也可以先声明后赋值。例如:

int a;a = 5;int b = 10;

(一)条件语句
if - else:根据条件判断执行不同的代码块。

if (condition) {    // 条件满足时执行的代码} else {    // 条件不满足时执行的代码}

switch - case:用于多分支选择,适用于对某个表达式的多个固定值进行判断。

switch (expression) {    case value1:        // 表达式等于 value1 时执行的代码        break;    case value2:        // 表达式等于 value2 时执行的代码        break;    default:        // 表达式不等于任何 case 值时执行的代码}

(二)循环语句
for 循环:常用于已知循环次数的情况。

for (初始化表达式; 条件表达式; 更新表达式) {    // 循环体}

例如打印 1 到 10 的数字:

for (int i = 1; i <= 10; i++) {    System.out.println(i);}

while 循环:先判断条件,条件满足时执行循环体。

while (condition) {    // 循环体}

do - while 循环:先执行一次循环体,再判断条件。

do {    // 循环体} while (condition);

(三)跳转语句
break:用于跳出当前循环或switch语句。
continue:跳过本次循环剩余部分,直接进入下一次循环。

(一)数组的声明与创建
声明一维数组:数据类型[] 数组名; 或 数据类型 数组名[];
创建数组:数组名 = new 数据类型[数组长度]; 例如:int[] arr = new int[5]; 也可以在声明时直接初始化:int[] arr = {1, 2, 3, 4, 5};
(二)二维数组
声明与创建二维数组:数据类型[][] 数组名 = new 数据类型[行数][列数]; 例如:int[][] matrix = new int[3][3]; 同样可以在声明时初始化:int[][] matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
(三)数组的遍历
可以使用for循环遍历数组元素。对于一维数组:

for (int i = 0; i < arr.length; i++) {    System.out.println(arr[i]);}

对于二维数组:

for (int i = 0; i < matrix.length; i++) {    for (int j = 0; j < matrix[i].length; j++) {        System.out.println(matrix[i][j]);    }}

(一)类与对象
类:是对象的模板,定义了对象的属性(成员变量)和行为(成员方法)。例如:

class Person {    // 成员变量    String name;    int age;    // 成员方法    void speak() {        System.out.println("My name is " + name + ", I'm " + age + " years old.");    }}

对象:是类的实例。通过new关键字创建对象:Person p = new Person(); 然后可以访问对象的成员变量和调用成员方法:p.name = “John”; p.age = 25; p.speak();
(二)封装
将类的成员变量设为private,通过public的getter和setter方法来访问和修改成员变量,实现数据的隐藏和封装。例如:

class Person {    private String name;    private int age;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public int getAge() {        return age;    }    public void setAge(int age) {        if (age >= 0) {            this.age = age;        }    }}

(三)继承
一个类可以继承另一个类,子类继承父类的非private属性和方法。使用extends关键字。例如:

class Student extends Person {    String school;    void study() {        System.out.println("I'm studying in " + school);    }}

子类可以重写父类的方法,通过@Override注解来标识。
(四)多态
多态体现为父类引用指向子类对象,在运行时根据对象的实际类型来调用相应的方法。例如:

Person p = new Student();p.speak(); 

这里p虽然是Person类型,但实际指向Student对象,调用speak方法时会根据Student类中的重写情况来执行。

(一)异常类型
Java 中的异常分为Checked Exception(受检异常,如IOException)和Unchecked Exception(非受检异常,如RuntimeException)。
(二)异常处理机制
使用try - catch - finally语句块来处理异常。try块中放置可能抛出异常的代码,catch块捕获并处理异常,finally块中的代码无论是否发生异常都会执行。例如:

try {    // 可能抛出异常的代码    int result = 10 / 0;} catch (ArithmeticException e) {    // 处理算术异常    System.out.println("除数不能为 0");} finally {    // 清理资源等操作    System.out.println("Finally block");}

还可以使用throws关键字在方法声明中抛出异常,让调用者处理。

(一)字符串类String
String类提供了许多操作字符串的方法,如length()获取字符串长度,charAt()获取指定位置字符,substring()截取子字符串,equals()比较字符串内容等。例如:

String str = "Hello, World!";System.out.println(str.length());System.out.println(str.charAt(0));System.out.println(str.substring(7));

(二)包装类
对应基本数据类型的包装类,如Integer、Double等。可以将基本数据类型转换为包装类对象(装箱),反之亦然(拆箱)。例如:

int num = 10;Integer integer = Integer.valueOf(num); // 装箱int num2 = integer.intValue(); // 拆箱

(三)集合框架
List:有序可重复的集合,如ArrayList和LinkedList。ArrayList基于数组实现,随机访问快;LinkedList基于链表实现,插入和删除操作快。

ArrayList<String> list = new ArrayList<>();list.add("Apple");list.add("Banana");System.out.println(list.get(0));

Set:无序不重复的集合,如HashSet和TreeSet。HashSet基于哈希表实现,TreeSet基于红黑树实现,可以对元素排序。

HashSet<Integer> set = new HashSet<>();set.add(1);set.add(2);set.add(1); // 重复元素不会被添加

Map:键值对集合,如HashMap和TreeMap。HashMap基于哈希表实现,TreeMap基于红黑树实现,可以根据键排序。

HashMap<String, Integer> map = new HashMap<>();map.put("Apple", 1);map.put("Banana", 2);System.out.println(map.get("Apple"));

(一)字节流
InputStream和OutputStream是字节流的抽象基类。FileInputStream用于读取文件字节数据,FileOutputStream用于写入文件字节数据。例如:

try {    FileInputStream fis = new FileInputStream("input.txt");    int data;    while ((data = fis.read())!= -1) {        System.out.print((char) data);    }    fis.close();} catch (IOException e) {    e.printStackTrace();}

(二)字符流
Reader和Writer是字符流的抽象基类。FileReader和FileWriter用于读取和写入字符数据,更适合处理文本文件。例如:

try {    FileReader fr = new FileReader("input.txt");    char[] buffer = new char[1024];    int len;    while ((len = fr.read(buffer))!= -1) {        System.out.print(new String(buffer, 0, len));    }    fr.close();} catch (IOException e) {    e.printStackTrace();}

八、总结
JavaSE 知识体系庞大而丰富,通过对数据类型、控制语句、数组、面向对象编程、异常处理、常用类库以及输入输出流等方面的复习,我们能更牢固地掌握 Java 编程的基础。这些知识是进一步学习 Java 高级特性和应用开发的必备前提。在实际编程中,不断实践和深入理解这些概念,才能更好地运用 Java 语言解决各种复杂的问题,为后续的学习和项目开发奠定坚实的基础。希望本次复习总结能帮助大家查漏补缺,提升对 JavaSE 的掌握程度,在 Java 编程之路上越走越远。


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/197506.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1