Java入门教程(下)

Java入门教程(下)

在上一篇文章中,我们介绍了Java的基础知识,包括Java简介、开发环境安装、基本语法、变量和数据类型、运算符和控制结构。本文将继续探讨Java的面向对象编程(OOP)思想和常用的Java API。

3. 面向对象编程(OOP)

3.1 类和对象

Java是一种面向对象的编程语言,类和对象是其核心概念。类是对象的模板,对象是类的实例。

示例:

java 复制代码
public class Person {
    String name;
    int age;

    // 构造方法
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // 方法
    public void displayInfo() {
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
    }

    public static void main(String[] args) {
        Person person = new Person("John", 25);
        person.displayInfo();
    }
}

3.2 继承

继承是OOP的一个重要特性,通过继承,一个类可以获得另一个类的属性和方法。使用extends关键字来实现继承。

示例:

复制代码
java复制代码public class Animal {
    void eat() {
        System.out.println("This animal eats food.");
    }
}

public class Dog extends Animal {
    void bark() {
        System.out.println("The dog barks.");
    }

    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.eat();  // 继承的父类方法
        dog.bark(); // 子类的方法
    }
}

3.3 多态

多态是指同一操作在不同对象上表现出不同的行为。通过方法重写和接口实现来实现多态。

示例:

复制代码
java复制代码public class Animal {
    void sound() {
        System.out.println("This animal makes a sound.");
    }
}

public class Dog extends Animal {
    @Override
    void sound() {
        System.out.println("The dog barks.");
    }
}

public class Cat extends Animal {
    @Override
    void sound() {
        System.out.println("The cat meows.");
    }

    public static void main(String[] args) {
        Animal myDog = new Dog();
        Animal myCat = new Cat();

        myDog.sound(); // 输出:The dog barks.
        myCat.sound(); // 输出:The cat meows.
    }
}

3.4 封装

封装是指将对象的属性私有化,并提供公共的访问方法(getter和setter)来控制对属性的访问。

示例:

复制代码
java复制代码public 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) {
        this.age = age;
    }

    public static void main(String[] args) {
        Person person = new Person();
        person.setName("John");
        person.setAge(25);

        System.out.println("Name: " + person.getName());
        System.out.println("Age: " + person.getAge());
    }
}

4. 常用的Java API

4.1 字符串操作

Java提供了丰富的字符串操作方法。常用的字符串类是String。

示例:

复制代码
java复制代码public class StringExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        
        // 获取字符串的长度
        int length = str.length();
        System.out.println("Length: " + length);

        // 获取子字符串
        String substr = str.substring(7, 12);
        System.out.println("Substring: " + substr);

        // 字符串替换
        String replacedStr = str.replace("World", "Java");
        System.out.println("Replaced String: " + replacedStr);

        // 字符串拼接
        String newStr = str.concat(" Welcome to Java.");
        System.out.println("Concatenated String: " + newStr);
    }
}

4.2 集合框架

Java的集合框架提供了一组接口和类,用于存储和操作一组对象。常用的集合类包括ArrayList、HashMap等。

示例:

复制代码
java复制代码import java.util.ArrayList;
import java.util.HashMap;

public class CollectionExample {
    public static void main(String[] args) {
        // ArrayList示例
        ArrayList<String> list = new ArrayList<>();
        list.add("Apple");
        list.add("Banana");
        list.add("Cherry");
        System.out.println("ArrayList: " + list);

        // HashMap示例
        HashMap<String, Integer> map = new HashMap<>();
        map.put("Apple", 1);
        map.put("Banana", 2);
        map.put("Cherry", 3);
        System.out.println("HashMap: " + map);
    }
}

4.3 文件操作

Java的java.io包提供了一组类和接口,用于文件操作。常用的文件操作类包括File、FileReader、FileWriter等。

示例:

复制代码
java复制代码import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class FileExample {
    public static void main(String[] args) {
        // 创建文件
        File file = new File("example.txt");

        try {
            if (file.createNewFile()) {
                System.out.println("File created: " + file.getName());
            } else {
                System.out.println("File already exists.");
            }

            // 写入文件
            FileWriter writer = new FileWriter(file);
            writer.write("Hello, World!");
            writer.close();
            System.out.println("Successfully wrote to the file.");

            // 读取文件
            FileReader reader = new FileReader(file);
            int character;
            while ((character = reader.read()) != -1) {
                System.out.print((char) character);
            }
            reader.close();
        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}

结论

通过本系列文章,我们详细介绍了Java的基础知识和编程技巧,从Java简介、基本语法到面向对象编程和常用的Java API。希望这些内容能帮助你更好地理解和掌握Java编程。


欢迎大家在评论区分享你们在学习Java过程中遇到的问题和经验,一起交流学习。

相关推荐
andyweike6 分钟前
Swift
开发语言·ios·swift
纪念 2297 分钟前
C++算法(六)
开发语言·c++·算法
香蕉大香蕉(06敬畏市场)22 分钟前
MySQL 单点详解(01)
java·数据库·mysql·面试·博客·实习
LaughingZhu38 分钟前
Product Hunt 热榜 2026-10-30:Empacer、Scape、Floot in ChatGPT
java·前端·数据库·人工智能·chatgpt·notion
_冷眸_1 小时前
Python 调用大模型 API:最小请求、Base URL 和 401/404 排查
开发语言·人工智能·python
niucloud-admin1 小时前
NIUCLOUD PHP SAAS上门家政使用文档:服务保障
java·开发语言·php
IT枫斗者枫哥1 小时前
CompletableFuture失败后返回空列表:异常没了,业务含义也变了
java·后端
知识搬运临时工1 小时前
一个模板把 AEM 拖进 Full GC 死亡螺旋:300% CPU、7 GB 堆、310 万行堆栈
java·aws
熊猫钓鱼>_>1 小时前
鸿蒙 PC 三方库适配复盘:libfvad 1.0 —— 把 WebRTC VAD 做成能装进采集链路的静态库
服务器·开发语言·华为·harmonyos·openharmony·适配·鸿蒙pc
用户432935928051 小时前
CoAP还是MQTT:1万只Cat.1水表三个月带宽续航实测
java