下面是“Java文件与类动手动脑实例详解”的完整攻略。
1. 什么是Java文件与类?
Java文件是以.java为扩展名的文件,它包含Java程序的源代码。而Java类则是这些源代码中定义的一个个类,它们是Java程序的基本构建块。
Java文件命名规范与类名一致,比如,名为MyClass
的类,应该存在名为MyClass.java
的Java文件中。
2. 编写Java文件与类的步骤
2.1. 编写Java类
一个Java类通常包含如下三部分:
- 类的修饰符(public、private等)
- 类名(要与文件名一致)
- 类的主体(包含成员变量、成员方法等)
下面是一个简单的Java类示例:
public class MyClass {
int age;
String name;
public void printInfo() {
System.out.println("My name is " + name + ", I'm " + age + " years old.");
}
}
2.2. 编译Java文件
编写完Java文件后,需要使用Java编译器(javac)将源代码编译成Java字节码,生成.class文件。在命令行中执行以下命令:
javac MyClass.java
2.3. 运行Java类
使用Java虚拟机(java)运行编译后的Java字节码,例如:
java MyClass
3. 示例1:计算器程序
下面是一个简单的计算器程序,它包含两个类:Calculator
和Main
。其中,Calculator
类封装了计算器的逻辑,Main
类则是程序的入口。
3.1. Calculator
类代码
public class Calculator {
private double result;
public void setResult(double result) {
this.result = result;
}
public void add(double num) {
result += num;
}
public void subtract(double num) {
result -= num;
}
public void multiply(double num) {
result *= num;
}
public void divide(double num) {
if (num == 0) {
throw new IllegalArgumentException("num can't be zero.");
}
result /= num;
}
public double getResult() {
return result;
}
}
3.2. Main
类代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Calculator calculator = new Calculator();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入要进行的操作(1.加 2.减 3.乘 4.除 5.退出):");
int op = scanner.nextInt();
if (op == 5) {
break;
}
System.out.println("请输入操作数:");
double num = scanner.nextDouble();
switch (op) {
case 1:
calculator.add(num);
break;
case 2:
calculator.subtract(num);
break;
case 3:
calculator.multiply(num);
break;
case 4:
calculator.divide(num);
break;
default:
System.out.println("无效的操作。");
}
System.out.println("当前值为:" + calculator.getResult());
}
}
}
运行上述代码,在控制台中输入操作符和操作数,即可进行计算,并输出计算结果。
4. 示例2:图形面积计算程序
下面是另一个示例程序,它可以计算矩形和圆形的面积,包含三个类:Shape
、Rectangle
和Circle
。其中,Shape
类是所有形状的父类,Rectangle
和Circle
是它的子类。
4.1. Shape
类代码
public abstract class Shape {
public abstract double getArea();
}
4.2. Rectangle
类代码
public class Rectangle extends Shape {
private double width;
private double height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
public double getArea() {
return width * height;
}
}
4.3. Circle
类代码
public class Circle extends Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
public double getArea() {
return Math.PI * radius * radius;
}
}
4.4. Main
类代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入要计算的图形(1.矩形 2.圆 3.退出):");
int op = scanner.nextInt();
if (op == 3) {
break;
}
switch (op) {
case 1:
System.out.println("请输入矩形的长和宽:");
double width = scanner.nextDouble();
double height = scanner.nextDouble();
Rectangle rectangle = new Rectangle(width, height);
System.out.println("矩形的面积为:" + rectangle.getArea());
break;
case 2:
System.out.println("请输入圆的半径:");
double radius = scanner.nextDouble();
Circle circle = new Circle(radius);
System.out.println("圆的面积为:" + circle.getArea());
break;
default:
System.out.println("无效的操作。");
}
}
}
}
运行上述代码,在控制台中输入要计算的图形类型和参数,即可计算出图形的面积。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java文件与类动手动脑实例详解 - Python技术站