目录
一、类的成员
类由属性和行为组成
- 属性:在类中通过成员变量来体现(类中方法外的变量)
- 行为:在类中通过成员方法来体现(非static关键字修饰的方法)
public class Person{//该类只定义了4个成员变量
//成员变量
String name;
int age;
char sex;
double salary;
}
二、定义类规范
类名首字母大写(满足大驼峰模式)
一个Java文件中可以定义多个class类, 但只能一个类是public修饰(称为主类)
public修饰的类名必须成为代码文件名
三、成员变量完整定义格式
修饰符 数据类型 变量名称 = 初始化值;(一般无需指定初始化值,存在默认值)
四、对象成员变量默认赋值规则
基本数据类型
byte、short、char、int、long(默认值 0)
float、double(默认值 0.0)
boolean (默认值 false)
引用类型
类、接口、数组、String (默认值 null)
五、如何得到类的对象
类名 对象名 = new 类名();
六、如何使用对象访问成员
访问属性:对象名.成员变量
访问行为:对象名.方法名(...)
七、对象内存图
对象存放在堆内存
对象变量存放在栈内存, 存储的是对象在堆内存中的地址
成员变量的数据存储在对象中, 存储在堆内存中
八、垃圾回收机制
当堆内存中的类对象或数组对象, 没有被任何变量引用(指向)时,
就会被判定为内存中的“垃圾”,同时Java存在自动垃圾回收器,会定期进行清理
九、定义一个类
1. 定义类的成员变量
用于描述该类型对象共同的数据结构
public class Student {
//属性
String name;
int age;
double score;
}
成员变量如果不赋初始值时,则系统会提供默认的初始值
整型(byte short int long): 默认值为0
浮点型(float double): 默认为0.0
字符型(char):默认为空字符
布尔型(boolean):默认为false
引用型:默认null
2. 定义类的成员的方法
用于描述对象的行为,封装对象的功能。
public class Person {
//成员方法 !!!main方法也时类的组成元素之一
public void show() {
System.out.println("show....")
}
}
十、创建并使用对象
1. 通过使用new()关键字创建对象
通过 new 类名(); 表示创建了该类的对象,也叫做类的实例化(instantiation)!
new Person();//实例化人类对象
2. 引用类型变量
为了能够对实例化的对象进行访问控制,需要使用一个特殊的变量--引用
Person p = new Person(); //p:指向对象的引用
引用存储的是对象的地址信息,"指向对象的引用"。
可以通过引用采用打点的形式访问对象的成员。
在 Java中,除了8种基本类型外,其他类型都为引用数据类型--且默认值为null
3. 引用类型变量的赋值传递
相同类型之间引用相互赋值
引用类型之间的赋值不会创建新的对象,但有可能会使两个引用指向同一对象
4. null和nullPointerException
空指针异常:
对于引用类型变量可以赋值为null,null的含义为“空”,表示没有指向任何对象。
当引用的值为null时,再去调用其成员会抛出nullPointerException
十一、总结
1. 类是一种抽象的数据类型
2. 类的组成:属性(数据本身)和方法(操作数据的行为)
3. OOP(Object Oriented Programming)面向对象编程实际是分类型思想。将过程种出现的数据泛化称为类。
4. main方法也属于类的方法