从零开始学java(十二)--为对象定义类

  • 对象的状态,也称为特征或属性,是由具有当前值的数据域来表示的。如,员工对象具有数据域name和age,标识员工的属性。
  • 对象的行为,也称为动作,是由方法定义的。调用对象的一个方法就是要求对象完成一个动作。如,可以为矩形对象定义一个名为getArea()方法返回矩形的面积。

类是组成java程序的基本要素,封装了一类对象的状态和行为,是这一类对象的原形。定义一个新的类,就创建了一种数据类型;实例化一个类就得到一个对象

类的定义

一个类的定义包括两个部分:类声明和类体的定义。

类声明

类声明的一般格式为:

[public][abstract|final] class ClassName [extends SuperClass]
		[implements InterfaceNameList]{
		//1.成员变量声明
		//2.构造方法定义
		//3.成员方法定义
}
  1. 类的修饰符

类的访问修饰符(控制类的访问与被访问权限)可以是public或缺省(即默认)。public表示类是公共类,可悲任何包中的类使用。若不加public修饰符,类只能被同一个包(package)中的其他类使用。abstract抽象类,final最终类。

  1. extends SuperClass

如果一个类要继承某个类需要使用extends,SuperClass为父类名。如果没有指明,默认继承Object类。

  • Java在java.lang包中有一个Object类。
  • 所有Java类都直接或间接扩展Object类。
  • 所有Java类都是Object类的子类Object类是所有类的超类。
  • Object类本身没有超类。
  • Object类的引用变量可以保存任何类的对象的引用。
  1. implements InterfaceNameList

如果定义的类需要实现接口,则使用implements InterfaceNameList选项。一个类可以实现多个接口,实现多个接口时需要用都靠分开。

  1. 类体

类生命结束后是一对大括号,大括号括起来的部分称为类体(class body)。类体中通常包含三部分内容:构造方法(创建类实例,创建对象并初始化对象状态),成员变量(定义对象状态)和成员方法(定义对象行为)。

public class Employee{
	public String name ;//成员变量
	public int age;//成员变量
	public double salary ;//成员变量
	
	public Employee{
	}//无参数构造方法
	
	public void sayHello()//成员方法
	{
		System.out.println("My name is " + name);
	}
	
	public double computeSalary(int hours,double rate)//成员方法
	{
		salar = salary + hours * rate;
		return salary;
	}
}

成员变量的定义

成员变量的声明格式为:

[public | protected | private | ][static][final]③  type  variableName [=value] ; 

说明:

  1. 变量的访问修饰符①

public:公共变量可以被任何方法访问;
protected:保护变量,可以被同一包中的类或子类访问;
private:私有变量,只能被同一个类的方法访问
无修饰符:变量只能被同一个包中的类访问

  1. 实例变量和静态变量②

static修饰,则该变量称为静态变量,又称为类变量.没有static修饰的为实例变量.

  1. 最终变量(标识符常量)③

使用final修饰的变量称为最终变量(标识符常量),常量可以在声明的时候赋值,一旦赋值便不可更改.

构造方法的定义

构造方法也叫构造器,是类的一种特殊方法.
Java中的每个类都有构造方法,其作用是创建对象并初始化对象的状态.

成员方法的定义

成员方法用来实现对象的动态特征.
成员方法的定义包括方法的声明和方法体的定义,一般格式如下:

//成员方法的定义包括方法的声明和方法体的定义
[public | protected | private | ] 
[static]  [final | abstract]  
returnType  methodName ( [ pparamList ] ) 
{  
/*方法体*/
} ; 

说明:

  1. 方法的返回值

返回值的类型可以是任何数据类型,包括基本数据类型和引用数据类型.若一个方法没有返回值,那么returnType应为全局变量.

  1. 方法参数

方法名的后面是一对括号,括号内是方法的参数列表.
声明格式为:
type paramName1 [,type paramName2]

  1. 访问修饰符

protected:可以在同一个类,同一个包中的类一级子类中被调用.
缺省访问修饰符,可以同一个类的方法访问和同一个包中的类访问.

  1. 实例方法和静态方法

无static→实例;有static→静态

  1. final和abstract方法

final修饰的方法为最终方法,不可被覆盖,方法的覆盖与继承有关系.
abstract:抽象方法.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值