Java面向对象程序例子

1. 引言

Java是一种面向对象的编程语言,它的设计理念是基于对象的概念。在Java中,一切都是对象,包括基本数据类型的变量。面向对象编程的核心概念是类和对象。本文将通过一个例子来介绍Java面向对象程序的基本概念和语法。

2. 类和对象

在Java中,类是一种定义对象的模板。一个类可以包含属性和方法。属性是类的数据成员,用于存储对象的状态。方法是类的成员函数,用于定义对象的行为。

下面是一个简单的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;
    }
}

上面的代码定义了一个名为Person的类,它有两个属性nameage,以及对应的getter和setter方法。getNamegetAge方法用于获取属性值,setNamesetAge方法用于设置属性值。

3. 创建对象

在Java中,要使用一个类,需要先创建该类的对象。可以使用new关键字来创建一个对象,然后通过对象来访问类的属性和方法。

下面是一个创建Person对象的示例:

public class Main {
    public static void main(String[] args) {
        // 创建Person对象
        Person person = new Person();
        
        // 设置属性值
        person.setName("John");
        person.setAge(25);
        
        // 获取属性值
        String name = person.getName();
        int age = person.getAge();
        
        // 输出属性值
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
    }
}

上面的代码中,Main类的main方法创建了一个Person对象,并通过对象的setter方法设置了属性值。然后通过对象的getter方法获取属性值,并使用System.out.println方法输出属性值。

4. 封装和继承

在面向对象编程中,封装和继承是两个重要的概念。

封装是指将类的属性和方法隐藏起来,只提供一些公共的访问接口。这样可以保护类的内部状态,提高代码的可维护性和重用性。在Java中,可以使用访问修饰符来控制属性和方法的访问权限。常用的访问修饰符有publicprivateprotected和默认(没有修饰符)。

下面是一个使用封装的示例:

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) {
        if (age >= 0) {
            this.age = age;
        } else {
            System.out.println("Invalid age!");
        }
    }
}

在上面的代码中,nameage属性被声明为私有的,只能通过公共的getter和setter方法访问。在setter方法中,加入了对年龄的有效性检查,如果年龄小于0,则输出错误信息。

继承是指一个类从另一个类派生而来,并继承了父类的属性和方法。子类可以通过继承来获得父类的特性,并可以在此基础上扩展或修改。在Java中,可以使用extends关键字来实现继承。

下面是一个使用继承的示例:

public class Student extends Person {
    private String school;
    
    public String getSchool() {
        return school;
    }
    
    public void setSchool(String school) {
        this.school = school;
    }
}

在上面的代码中,Student类继承自Person类,并新增了一个school属性和对应的getter和setter方法。