-
属性用于描述对象的状态,通常以变量的形式存在。
-
方法定义了对象的行为,可以执行特定的操作或计算。
-
构造方法用于初始化对象,可以根据需要重载以支持不同的初始化方式。
1. 属性(字段)
属性是类的状态或特征,通常用变量表示。属性可以是基本数据类型(如int、String等)或对象类型。
示例 1:定义一个简单的类
// 定义一个简单的类 Person
public class Person {
// 属性(字段)
String name; // 姓名
int age; // 年龄
String gender; // 性别
// 方法:显示个人信息
public void displayInfo() {
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Gender: " + gender);
}
}
// 主类,用于测试 Person 类
public class Main {
public static void main(String[] args) {
// 创建 Person 类的对象
Person person = new Person();
// 设置属性值
person.name = "Alice";
person.age = 30;
person.gender = "Female";
// 调用方法显示个人信息
person.displayInfo();
}
}
代码解释:
-
类的声明:
public class Person定义了一个名为Person的类。 -
属性:
String name、int age和String gender是Person类的属性,分别表示姓名、年龄和性别。 -
方法:
public void displayInfo()是一个方法,用于输出个人信息。 -
对象创建:在
Main类的main方法中,使用new Person()创建了一个Person对象,并设置其属性值,最后调用displayInfo方法显示信息。
2. 方法
方法是定义类的行为或功能。方法可以接收参数并返回值,也可以不接收参数或不返回值。
示例 2:添加方法
public class Calculator {
// 方法:加法
public int add(int a, int b) {
return a + b; // 返回两个数的和
}
// 方法:减法
public int subtract(int a, int b) {
return a - b; // 返回两个数的差
}
// 方法:乘法
public int multiply(int a, int b) {
return a * b; // 返回两个数的积
}
// 方法:除法
public double divide(int a, int b) {
if (b != 0) {
return (double) a / b; // 返回两个数的商
} else {
System.out.println("Cannot divide by zero.");
return 0; // 返回0,表示无法除以零
}
}
}
// 主类,用于测试 Calculator 类
public class Main {
public static void main(String[] args) {
Calculator calc = new Calculator();
// 调用方法进行计算
System.out.println("Addition: " + calc.add(5, 10)); // 输出:15
System.out.println("Subtraction: " + calc.subtract(10, 5)); // 输出:5
System.out.println("Multiplication: " + calc.multiply(4, 5)); // 输出:20
System.out.println("Division: " + calc.divide(10, 2)); // 输出:5.0
calc.divide(10, 0); // 测试除以零
}
}
代码解释:
-
方法定义:
public int add(int a, int b)定义了一个加法方法,接收两个整数参数并返回它们的和。 -
其他方法:
subtract、multiply和divide方法分别实现了减法、乘法和除法的功能。 -
除法方法的特殊处理:在
divide方法中,添加了对除以零的检查,避免了运行时错误。 -
对象创建和方法调用:在
Main类中,创建Calculator对象并调用各种计算方法,输出结果。
3. 构造方法
构造方法是用于初始化对象的特殊方法。构造方法的名称与类名相同,并且没有返回值。构造方法可以重载,以便根据不同的参数初始化对象。
示例 3:构造方法的使用
public class Book {
// 属性(字段)
String title; // 书名
String author; // 作者
double price; // 价格
// 构造方法:无参数
public Book() {
title = "Unknown Title"; // 默认书名
author = "Unknown Author"; // 默认作者
price = 0.0; // 默认价格
}
// 构造方法:带参数
public Book(String title, String author, double price) {
this.title = title; // 使用参数初始化属性
this.author = author;
this.price = price;
}
// 方法:显示书籍信息
public void displayInfo() {
System.out.println("Title: " + title);
System.out.println("Author: " + author);
System.out.println("Price: $" + price);
}
}
// 主类,用于测试 Book 类
public class Main {
public static void main(String[] args) {
// 使用无参数构造方法创建对象
Book book1 = new Book();
book1.displayInfo(); // 输出默认信息
// 使用带参数构造方法创建对象
Book book2 = new Book("Effective Java", "Joshua Bloch", 45.0);
book2.displayInfo(); // 输出书籍信息
}
}
代码解释:
-
构造方法:
public Book()是无参数构造方法,用于初始化书籍的默认信息。public Book(String title, String author, double price)是带参数构造方法,用于根据提供的参数初始化书籍的信息。 -
属性初始化:在构造方法中使用
this关键字来区分类的属性和构造方法的参数。 -
对象创建:在
Main类中,分别使用无参数和带参数的构造方法创建Book对象,并调用displayInfo方法显示书籍信息。
Java类的属性、方法与构造方法
5401

被折叠的 条评论
为什么被折叠?



