类的概念与简例

类:将具有相同属性及相同行为的一组对象称为类。广义地讲,具有共同性质的事物的集合就称为类。

在面向对象程序设计中,类是一个独立的单位,他有一个类名,其内部包括成员变量,用于描述对象的属性:还包括类的成员方法,用于描述对象的行为。

在java程序设计中,类被认为是一种抽象数据类型,这种数据类型,不但包括数据,还包括数据,还包括方法。这大大地扩充了数据类型的概念。

类是一个抽象的概念,要利用类的方式来解决问题,必须用类创建一个实例化的类对象,然后通过类对象去访问类的成员变量,去调用类的成员方法来实现程序的功能。

这如同“汽车”本身是一个抽象的概念,只有使用了一辆具体的汽车,才能感受到汽车的功能。

一个类可创建多个类对象,他们具有相同的属性模式,但可以具有不同的属性值。

Java程序为每一个类对象都开辟了内存空间,以便保存各自的属性值。

面向对象的程序设计有三个主要特征:如下:

封装性

继承性

多态性

封装性

封装是面向对象的方法所应遵循的一个重要原则。

他有俩个含义:一是指把对象的属性和行为看成一个密不可分的整体,将这两者“封装”在一个不可分割的独立单位(即对象)中。

另一层含义指“信息隐蔽“,把不需要让外界知道的信息隐蔽起来,有些对象的属性及行为允许外界用户知道或使用,但不允许更改,

而尽可能隐蔽对象的功能实现细节。

封装机制在程序设计中表现为,把描述对象属性的变量及实现对象功能的方法合在一起,定义为一个程序单位,

并保证外界不能任意更改其内部的属性值,也不能任意调动其内部的功能方法。

封装机制的另一个特点是,为封装在一个整体内的变量及方法规定了不同级别的 ”可见性“或访问权限。

继承性

继承是面向对象方法中的重要概念,并且是提高软件开发效率的重要手段。

首先拥有反映事物一般特性的类,然后在其基础上派生出反映特殊事物的类,如已有的汽车的类,该类中描述了汽车的普遍属性的行为,

进一步再产生轿车的类,轿车的类是继承汽车的类,轿车类不但拥有汽车类的全部属性和行为,还增加轿车特有的属性和行为。

在JAVA程序设计中,已有的类可以是java开发环境所提供的一批最基本的程序——类库。用户开发的程序类是继承这些已有的类。

这样,现在类所描述过的属性及行为,即已定义的变量和方法。在继承产生的类完全可以使用。

被继承的类称为父类或超类,而经继承产生的类称为子类或派生类。根据继承机制,派生类继承了超类的所有成员,并相应地增加了自己的一些新的成员。

面向对象程序设计中的继承机制,大大增加了程序代码的可复制性,提高了软件的开发效率,降低了程序产生错误的可能性,也为程序的修改扩充提供了遍历。

若一个子类只允许继承一个父类,称为单继承;若允许继承多个父类,称为多继承。目前许多面向对象程序设计语言不支持多继承。而JAVA语言通过接口

的方式来弥补由于java不支持多继承而带来的子类不能享用多个父类的成员的缺憾。

多态性

多肽是面向对象程序设计的又一个重要特征。多肽是允许程序中出现重名现象。java语言中含有方法重载与成员覆盖俩种形式的多肽。

方法重载:在一个类中,允许多个方法使用同一个名字,但方法的参数不同,完成的功能也不同。

成员覆盖:子类与父类允许具有相同的变量名称,但数据类型不同,允许具有相同的方法名称,但完成的功能不同。

多肽的特性使程序的抽象程度和便捷程度更高,有助于程序设计人员对程序的分组协同开发。

类的封装性

public class java_ex04 {
public static void main(String[] args){
person2 person2 = new person2();
person2.setName("xiaowang");
person2.setAge(-25);
person2.talk();
}
}
class person2{
private String name;
private int age = 0;
void talk(){
System.out.println("my name:" + name + ", my age:" + age);
}
public void setName(String str){
name = str;
}
public void setAge(int a){
if(a > 0){
age = a;
}
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
}

结果:

my name:xiaowang, my age:0

解析:

用private可以将属性封装起来,当然private也可以封装方法。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值