*对象和类的概念:
类:类是一个模板,它描述一类对象的行为和状态。
对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名 字、品种;行为有:摇尾巴、叫、吃等。
借用网上的图简单理解一下类和对象,下图中男孩女孩为类,而具体的每个人为该类的对象:
1、 Java中的类:
类里可以存放的成员
在定义java类时,常用的修饰符有:public、final、abstract
命名规范为:大驼峰命名
以下创建一个人类的类
(1) 类中的成员变量:
成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量 可以被类中方法、构造方法和特定类的语句块访问
常用修饰符:(public protected private)三选一,可加 static或final
(2)类中的构造器(构造器也叫构造方法或者构造函数):
构造器的规范:
*名称与类名相同,没有返回值,不能写void
*如果类中没有手动添加构造器,编译器会默认再添加一个无参构造器
*如果手动添加了构造器(无论什么形式),默认构造器就会消失
以下是手动添加构造器:
*构造器可以重载
构造器重载的规范在于:必须有一个独一无二的参数类型列表
构造器重载的作用在于:一个方法可以有多个处理方式
以下为构造器的重载:
This指对的是对象自身,第三个构造器的this(str)是一种省略写法,匹配上一个这样参数的写法this.name=str
(3) 类中的方法:
Java方法是语句的集合,它们在一起执行一个功能。
*方法是解决一类问题的步骤的有序组合
*方法包含于类或对象中
*方法在程序中被创建,在其他地方被引用
常用修饰符:(public protected private)三选一,可搭配static、final、synchronize、native
方法也可以重载:
重载规则:
*方法名字相同
*被重载的方法必须形参列表不一样(参数个数或类型不一样);
*被重载的方法可以改变返回类型;
*被重载的方法可以改变访问修饰符;
*返回值类型不能作为重载函数的区分标准。
*被重载的方法可以声明新的或更广的检查异常;
*方法能够在同一个类中或者在一个子类中被重载。
(4)初始化代码块(修饰符权限中会说到)
2、 Java中的对象:
(1)创建对象:
对象是根据类创建的。在Java中,使用关键字new来创建一个新的对象。创建对象需要以下三步:
声明: 声明一个对象,包括对象名称和对象类型。
实例化:使用关键字new来创建一个对象,只是为对象在内存中开辟空间。
初始化:使用new创建对象时,会调用构造方法初始化对象,对象中的值赋初始值。
以下为实际操作:
需要注意的是因为第三个构造器使用的是this(str)的方式,这样会再次调用匹配参数的构造器,因此会出现两次调用第二个构造器的情况,因此输出情况如下:
以下是对象的访问