面向对象编程思想
面向对象的思维:当需要实现某个或某些功能时,首先考虑这些功能的实现由哪个或哪些对象负责。
例:System.out.println();
若这样的对象不存在,则考虑利用哪个或哪些类来创建这样的对象。
若不存在这样的类,则需要进行类的设计和声明。

创建对象的简单方式
类名 对象名 = new 类名();
属性和方法
属性
-
🌰 即C++中的成员变量。
-
🌰 组成对象的基本组件之一。
-
🌰 可以在声明一个类时在类中声明属性。
-
🌰 在类中声明属性的另一层含义是,使用该类创- 建的所有对象均包含此属性。
-
🌰 普通的属性是属于对象的,由对象独享。
方法
-
🌰 即C++中的成员函数。
-
🌰 组成对象的基本组件之一。
-
🌰 可以在声明一个类时在类中声明方法。
-
🌰 在类中声明方法的另一层含义是,使用该类创建的所有对象均可调用此方法。
-
🌰 方法是一段代码,是由所有对象所共享的。不同对象在调用同一方法时执行的是同一段代码。
[public] class 类名 {
访问权限 类型名 属性1;
访问权限 类型名 属性2;
…… ……
访问权限 类型名 属性n;
访问权限 返回值类型 方法名1(参数列表){
方法体
}
…… ……
访问权限 返回值类型 方法名n(参数列表){
方法体
}
}

【java】当前对象
当前对象的概念
- 🌰 当前对象的概念只存在于方法调用时。
- 🌰 普通成员方法必须被对象调用。
- 🌰 对于一个普通的成员方法,当其被调用时,调用该方法的对象即为当前对象。
当前对象的意义
- 🌰 不同的对象调用同一个方法时,执行的代码相同,但当前对象不同。
【java】内存模型
一般程序执行时的内存管理
【提问】谁管理内存?
【回答】:操作系统
【提问】与程序运行的关系?
【回答】
- 🌰 程序运行时需要占用内存空间
- 🌰 操作系统负责为运行的程序分配内存空间
- 🌰 操作系统负责规范运行着的程序如何使用分配给它的内存空间。

Java程序执行时的内存管理
- 💬 Java程序如何运行?
- 📃 操作系统运行JVM。
- 📃 JVM运行Java程序。
【理解】
- 🌰 JVM是运行在操作系统上的应用程序。
- 🌰 Java应用程序是运行在JVM上的应用程序。
操作系统负责为JVM的运行分配内存并管理,JVM负责将其分配到的内存再分配给运行在JVM上的Java应用程序。
【总结】
- Java程序运行时的内存模型有JVM定义。
- 在JVM规范中可以找到Java程序的内存模型。

【图解】将程序运行时的内存空间分成代码区、数据区、栈区、堆区
Java对象的内存形态
由于对象本身是new出来的,其存储空间在堆内存中。
对象本身的存储空间由对象中包含的属性的存储空间构成。
对象的引用是一小块特定的内存空间,其中存放了一些和对象相关的信息,例如地址。
方法的参数传值
方法参数的类型可以是基本数据类型也可以是引用类型。
方法参数传递的方式为值传递。
如果方法的参数为引用数据类型,则调用时传递的值为引用的值,不是对象。
Java中传参时永远不会拷贝对象。
【java】访问权限

方法的重载
在一个类中可以声明多个方法名相同的方法,这些方法必须具有不同的参数列表。
对象的初始化
在创建对象时为对象的属性设置初始值。
网友评论