JAVA迅猛式语法总结(九)

6. 面向对象

6.1 对象的定义

面向对象(Object Oriented Programming,OOP),本质就是以类的形式组织代码,以对象来组织数据。面向对象的思想对于描述宏观上把握、整体上合理分析是很高效的,但是在具体到微观操作的时候,仍然需要面向过程的思想去解决。

三大特性:封装,继承,多态

先有对象后有类,类是抽象的,对象是具体要描述的事物。

对于代码来说,类是对象的模板,如Student类是一种类,而每一个不同的学生对于的该类,根据个体差异从而确定该类参数的具体值,所形成的具体变量对象,这就是对象。

Student student = new Student
    |      |
   类	 对象

类是一种抽象的数据类型,它是对于一类事物的整体描述或者定义,不是一个具体的事物。

对象是抽象概念的具体实例,能展现出具体的特性。

6.2 构造器

类比c++,构造器就是构造函数,为一个类初始化一些属性,默认的构造其就是一个空方法。

在使用new关键字创建对象的时候,除了分配了内存,同时也进行了默认初始化。

构造器也可以叫构造方法(构造函数狂喜+++),在创建对象的时候是必须调用的,其有以下两个特点:

  1. 必须和类名相同。

  2. 必须是无返回类型,但也不能写void,例如:public Student(){}。

    public class Dog
    {
        String name;
    
        public Dog(){
            this.name = "puppy";
        }
        
        public Dog(String name//可以多个参数){
            this.name = name;
        }
    }
    

    以上是有参构造和无参构造两个情况,其中无参构造可以是空方法。

6.3 封装

“该露的露,该藏的藏”,追求高内聚,低耦合。内部数据细节应该由自己完成,不允许外部干涉,仅仅暴露少量的方法给外部使用。

封装就是数据的隐藏,一般是禁止直接对对象中的数据进行访问的,而是换做一种操作接口来访问。

一般来说,类当中的属性应当添加private修饰词,以保证其安全性:

public class Dog
{
    private String name;
    

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

再通过getName、setName方法进行操作,在方法内设置条件,这样能避免非法参数破坏系统。

封装的意义有以下几点:

  1. 提高程序安全性,保护数据。
  2. 隐藏代码细节。
  3. 统一接口。
  4. 提高系统可维护性。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值