Java:对象和类
类Class
✨类为对象定义属性和行为。
面向对象程序设计(Object
Oriented Programming,OOP)
对象(Object):代表现实世界中可以明确标识的一个实体。一块石头,一颗树。
对象的 属性attribute,状态state,特征property
用数据域来表示
int rock = 1;
对象的 行为hehavior,动作action
用方法来定义
getRockNum();
而类(Class)定义同一类型的对象,一个对象是一个类的实例。类是一个模板,通过模板我们可以创建多个对象。
创建实例的过程称之为实例化(instantiation) Object和Instance是可以转换的。
🎈Java类使用变量定义数据域,使用方法定义动作。
类中还有构造方法(constructor),设计它是为了完成初始化动作。构造方法参考
静态变量
✨静态变量被类中的所有对象所共享。静态方法不能访问类中的实例成员。
当你想让一个类的所有实例共享数据,就需要使用 静态变量(static variable) ,类变量(class varia)。使用的时候在变量或者方法前加上static修饰符。
static int numberOfObjects;
static int getNumberObjects(){
return numberOfObjects;
}
final 常量
对象共享类中常量应该声明为 final static
final static double PI = 3.1415926;
由于静态方法并不属于某个特定对象,所有静态方法不能调用实例方法和实例数据源。
可见性修饰符
✨可见性修饰符用于确定一个类以及它的成员的可见性。
public 可以用在类和类的成员上
private 只能在自己的类中访问,并且只能用在类的成员上。
protect 在包内和派生类中可用 比默认default package权限大一点。
🎈在局部变量
上使用public 和 private 都会导致编译错误。
数据域封装
数据域设置为私有保护数据,并且使类易于维护。
使用private 将数据域声明成私有后,为了能够更新数据,可以创建访问器(accessor)get方法
,
给数据域设置新值,使用set方法的修改器(mutator)
。
不可变类(immutable class)和对象(immutable object)
满足三个条件:
- 所有数据域都是私有的
- 没有getset方法
- 没有返回值指向可变数据域的引用
装箱拆箱
基本类型和包装类型之间的自动转换
将基本类型转换为包装类对象的过程称为装箱
boxing
将包装类型转换为基本类型的过程称为拆箱
unboxing
Integer intObject = new integer(2);//用户手动
Integer intObject = 2;//自动装箱
posted on 2022-04-16 09:48 Michael_chemic 阅读(42) 评论(0) 编辑 收藏 举报