当前位置:首页 > Java

如何面向对象写java

2026-03-18 18:16:23Java

面向对象编程基础

面向对象编程(OOP)是一种以对象为核心的编程范式,Java 是完全面向对象的语言。核心概念包括封装继承多态抽象

  • 类(Class):对象的模板,定义属性和方法。例如:

    public class Person {
        private String name; // 属性(封装)
        public void setName(String name) { // 方法
            this.name = name;
        }
    }
  • 对象(Object):类的实例。通过 new 关键字创建:

    Person person = new Person();

封装与访问控制

封装通过访问修饰符控制属性和方法的可见性:

  • private:仅类内部可访问。
  • protected:类内、同包及子类可访问。
  • public:全局可访问。
  • 默认(无修饰符):同包内可访问。

示例:

如何面向对象写java

public class BankAccount {
    private double balance; // 私有属性
    public void deposit(double amount) { // 公有方法
        if (amount > 0) balance += amount;
    }
}

继承与多态

继承通过 extends 实现子类对父类的扩展:

public class Animal {
    public void sound() {
        System.out.println("Animal makes sound");
    }
}

public class Dog extends Animal {
    @Override
    public void sound() { // 方法重写(多态)
        System.out.println("Dog barks");
    }
}

多态允许父类引用指向子类对象:

Animal myDog = new Dog();
myDog.sound(); // 输出 "Dog barks"

抽象类与接口

  • 抽象类abstract class):

    如何面向对象写java

    public abstract class Shape {
        public abstract double area(); // 抽象方法
    }
  • 接口interface,Java 8+):

    public interface Drawable {
        void draw(); // 默认 public abstract
        default void print() { // 默认方法
            System.out.println("Printing...");
        }
    }

构造方法与初始化

构造方法用于对象初始化,名称与类相同:

public class Car {
    private String model;
    public Car(String model) { // 构造方法
        this.model = model;
    }
}

静态成员与实例成员

  • 静态成员static):属于类而非实例。
  • 实例成员:属于具体对象。

示例:

public class Counter {
    static int count = 0; // 类变量
    public Counter() {
        count++;
    }
}

常用设计模式示例

单例模式(确保唯一实例):

public class Singleton {
    private static Singleton instance;
    private Singleton() {} // 私有构造
    public static Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}

最佳实践

  • 优先使用组合而非继承。
  • 遵循 SOLID 原则(单一职责、开闭原则等)。
  • 使用 final 避免不必要的继承或修改。
  • 重写 equals()hashCode() 时保持一致性。

分享给朋友:

相关文章

java如何安装

java如何安装

安装Java的步骤 下载Java开发工具包(JDK) 访问Oracle官方网站或OpenJDK项目页面下载适合操作系统的JDK版本。Oracle JDK适用于商业用途,OpenJDK是开源版本。选择…

java如何创建类

java如何创建类

创建类的基本语法 在Java中,类通过class关键字定义,语法如下: [访问修饰符] class 类名 { // 成员变量(属性) // 构造方法 // 成员方法 }…

java如何输入数组

java如何输入数组

输入数组的方法 在Java中,可以通过多种方式输入数组,具体取决于输入源(如控制台、文件等)和数组类型(如基本类型或对象类型)。以下是几种常见的方法: 使用Scanner从控制台输入 对于基本数据类…

java如何上传文件

java如何上传文件

使用HttpURLConnection上传文件 在Java中,可以通过HttpURLConnection实现文件上传功能。需要设置请求头为multipart/form-data,并构建包含文件数据的请…

如何安装java环境

如何安装java环境

下载JDK安装包 访问Oracle官方网站或OpenJDK项目页面,选择适合操作系统的JDK版本(如Windows、macOS或Linux)。确保下载与系统架构匹配的版本(32位或64位)。 运行安…

java如何创建项目

java如何创建项目

使用IDE创建Java项目(以IntelliJ IDEA为例) 打开IntelliJ IDEA,选择“New Project”。 在左侧菜单中选择“Java”,确保已配置JDK(若无需手动添加)。 勾…