对象与类

对象与类

对象是实体,需要被创建,可以为我们做事情美
类是规范,根据类的定义来创建对象
:(模板) 一类对象的统称
对象:(实体) 这一类具体化的一个实例
一个类可以产生多个对象

  • 对象=属性+服务

OOP(面向对象程序设计语言)特性:继承、封装、多态

  1. 一切都是对象
  2. 程序就是一堆互相发送消息的对象
  3. 每个对象有自己的存储空间,里面是其他的对象
  4. 每个对象都一个类型
  5. 所有属于某个特定类型的对象可以提供相同的服务
创建对象

对象变量是对象的管理者

  • 成员变量在定义的地方就可以给出初始值
  • 没有给出初始值的成员变量会自动获得它所对应类型的0值
  • 对象变量的0值表示没有管理任何对象,也可以主动给null值
  • 定义初始化可以调用函数,甚至可以使用已经定义的成员变量
class  Person<类名>{
	类体;
	//实例成员,访问时使用实例成员方法--》引用   对象 . 属性
	public String name;//属性     成员变量     实例成员变量
	public int age;// 
	//static  静态成员变量  存于方法区  
	//静态成员变量访问时使用类名 . 属性 
	//静态成员方法的调用  通过 类名 . 方法  进行调用
	public static int count = 10;
	Public static final int SIZE = 30;//方法区
	//final修饰之后,放在哪个区域不一定
	Public final int SIZE2 = 20;  
	//行为   方法  实例成员方法
	public void eat(){
		System.out.println(name + "吃饭!");
	}
}
public class Test{
public static void main(String[] args){
	Person person = new Person();//创建对象person
	person.name = "张飞";
	Person.age = 99;
	person.eat();
}

  • 被static所修饰的不管是成员还是方法(属于类,只有一份 存于方法区),他的调用或者访问都只需要使用类名 .
    也就是说,所有被static所修饰的不管是方法还是成员,都不依赖于对象
    注意事项:
  • new 关键字用于创建一个对象的实例.
  • 使用 . 来访问对象中的属性和方法.
  • 同一个类可以创建多个实例.

类的成员:

实例成员变量:如果没有赋值,那么他的默认值就是自己所对应的0值
引用类型-》null 数组 类 String
简单类型-》0 char ‘\u0000’ boolean = false;

成员变量未初始化,打印其长度会产生空指针异常

成员变量

类定义了对象中所具有的变量,这些变量称作成员变量;每个对象都有自己的变量,和同一个类的其他对象是分开的。
方法与成员变量

  • 在方法中可以直接写成员变量的名字来访问成员变量;
  • 方法是通过对象来调用的;
  • this是成员方法的一个特殊的固有的本地变量,它表达了调用这个方法的那个对象;
  • 调用方法通过运算符 . 调用某个对象的方法;
  • 在成员方法内部直接调用自己(this)的其他方法;
本地变量
  • 定义在方法内部的变量
  • 本地变量的生存期和作用域都是方法内部
  • 成员变量的生存期是对象的生存期,作用域是类内部的成员方法
构造方法
  • 如果有一个成员函数的名字和类的名字完全相同,则在创建这个类的每一个对象的时候都会自动调用这个函数–》构造方法
  • 这个函数不能有返回类型
方法重载
  • 一个类可以有多个构造方法,只要他们的参数列表不同
  • 创建对象的时候给出不同的参数值,就会自动调用不同的构造方法
  • 通过this()还可以调用其他构造方法
  • 一个类里的同名但参数表不同的方法构成了重载关系
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值