特特的JAVA编程笔记

记录Java学习路上的点点滴滴

Java基础:面向对象编程三大特性

Java是一门面向对象的编程语言,面向对象编程有三大基本特征:封装、继承和多态。

封装

封装是指把数据和操作数据的方法绑定在一起,对数据进行隐藏和保护。通过访问修饰符(public、private、protected)控制外部对类内部的访问权限。

public class Student { 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; } } }

继承

继承允许子类继承父类的属性和方法,提高了代码的重用性。Java只支持单继承,即一个类只能继承一个父类。

多态

多态是指同一个接口或方法在不同对象下表现出不同的形态。多态性增强了软件的灵活性和扩展性。

Java集合框架详解

Java集合框架提供了一系列接口和实现类,用于存储和管理对象。主要包括List、Set和Map三大类。

List接口

List代表有序的集合,可以包含重复元素。主要实现类有ArrayList、LinkedList和Vector。

import java.util.*; public class ListExample { public static void main(String[] args) { List list = new ArrayList<>(); list.add("Java"); list.add("Python"); list.add("C++"); for(String item : list) { System.out.println(item); } // 在指定位置插入元素 list.add(1, "JavaScript"); System.out.println("修改后的列表:" + list); } }

Set接口

Set不允许包含重复元素,主要实现类有HashSet、LinkedHashSet和TreeSet。

Map接口

Map存储键值对(key-value),键不能重复。主要实现类有HashMap、LinkedHashMap和TreeMap。

Java异常处理机制

Java的异常处理机制是程序健壮性的重要保障。通过try-catch-finally语句块捕获和处理异常,确保程序在遇到错误时不会崩溃。

异常分类

Java中的异常分为两类:检查型异常(Checked Exception)和运行时异常(Runtime Exception)。检查型异常必须在编译时处理,而运行时异常可以在运行时才被发现。

import java.io.*; public class ExceptionHandling { public static void main(String[] args) { // 示例:文件读取异常处理 BufferedReader reader = null; try { reader = new BufferedReader(new FileReader("example.txt")); String line = reader.readLine(); System.out.println(line); } catch(FileNotFoundException e) { System.err.println("文件未找到:" + e.getMessage()); } catch(IOException e) { System.err.println("读取文件时发生错误:" + e.getMessage()); } finally { // 确保资源被释放 if(reader != null) { try { reader.close(); } catch(IOException e) { System.err.println("关闭文件时发生错误:" + e.getMessage()); } } } // 使用try-with-resources简化资源管理 try(BufferedReader br = new BufferedReader(new FileReader("example.txt"))) { String line = br.readLine(); System.out.println(line); } catch(IOException e) { System.err.println("文件操作失败:" + e.getMessage()); } } }

自定义异常

可以根据需要定义自己的异常类,只需继承Exception或RuntimeException即可:

public class CustomException extends Exception { public CustomException(String message) { super(message); } public CustomException(String message, Throwable cause) { super(message, cause); } }