Java类与对象的深入探索
立即解锁
发布时间: 2025-08-19 00:13:20 阅读量: 1 订阅数: 12 


Java for Android开发:从Java SE到移动开发的迁移
### Java类与对象的深入探索
#### 1. 引言
在简单应用开发中,将语句插入类的`main()`方法可以完成基本任务。但当开发复杂应用时,这种方式会变得繁琐、低效且易出错。而Java中的类和对象能够有效改善应用架构,解决这些问题。同时,Java创建数组的方式也更为强大和灵活,与对象创建有相似之处。
#### 2. 类的声明
类既是应用的容器,也是创建对象的模板。声明类时,至少要指定保留字`class`,接着是类名(需为有效的Java标识符,采用驼峰命名法,首字母大写),然后是类体(用`{}`括起来)。若希望类有`main()`入口点或能被其他包访问,可在前面添加`public`。例如:
```java
public class Image {
// various member declarations
}
```
对于公共类,文件名应与类名相同。非公共类和公共类可放在一个文件中,但只能有一个公共类,且文件名要与该公共类名匹配。
#### 3. 类与应用
在Java中,应用结构通常通过公共类中的`public static void main(String[] args)`方法来体现。例如:
```java
public class App {
public static void main(String[] args) {
// statements to execute
}
}
```
将上述代码保存为`App.java`,编译命令为`javac App.java`,运行命令为`java App`。
#### 4. 对象的构造
可以使用`new`运算符和构造函数从自定义类型(如`Image`、`SavingsAccount`和`App`)创建对象。对象创建的抽象语法为`new constructor`。`new`运算符会在堆中分配内存存储对象,并调用构造函数初始化对象,构造函数结束后返回对象的引用。构造函数声明的语法为:
```java
public class_name(parameter_list) {
// statements to execute
}
```
`public`是可选的,构造函数没有返回类型,其名称与类名相同。例如:
```java
Image image = new Image();
```
这里`new`运算符在堆中分配内存存储`Image`对象,调用无参构造函数初始化对象,返回的引用存储在`image`变量中。
#### 5. 构造函数的类型
- **默认构造函数**:当类未显式声明构造函数时,Java会隐式创建一个默认无参构造函数。但如果类中至少声明了一个构造函数,Java就不会创建默认无参构造函数。
- **显式构造函数**:可以在类体中显式声明构造函数。例如:
```java
public class Image {
public Image() {
System.out.println("Image() called");
}
}
```
也可以声明带参数的构造函数,并且一个构造函数可以依赖另一个构造函数来避免代码冗余。例如:
```java
public class Image {
public Image(String filename) {
this(filename, null);
System.out.println("Image(String filename) called");
}
public Image(String filename, String imageType) {
System.out.println("Image(String filename, String imageType) called");
if (filename != null) {
System.out.println("reading " + filename);
if (imageType != null)
System.out.println("interpreting " + filename + " as storing a " + imageType + " image");
}
// Perform other initialization here.
}
```
0
0
复制全文
相关推荐










