面向对象,面向对象的三大特征

面向对象的概念:

面向对象 (Object-Oriented Programming, OOP ) 是将现实问题构建关系,然后抽象成 类 ( class ),给类定义属性和方法后,再将类实例化成 实例 ( instance ) ,通过访问实例的属性和调用方法来进行使用。

面向对象编程的本质就是:

以类的方式组织代码,以对象的组织(封装)数据。

类与对象的关系

类是模板,没有类就没有对象。

对象是依据类而产生的一个个的个体,对象的属性的值的改变引起对象的改变,但是影响不到类(生物界除外)。

类是抽象的,要用必须实例化。类实例化后会返回一个自己的对象!

Student xiaoming=new Student;

xiaomingt对象就是一个Student类的具体实例!

方法定义

修饰符 返回值类型 方法名(){

//方法体;

return 返回值;

}

方法的调用

类名.方法名

构造器

一个类即使什么都不写,他也会存在一个方法 显示的定义构造器

实例化初始值

  1. 使用new关键字,本质是在调用构造器

  2. 用来初始化值

有参构造:一旦定义了有参构造,无参就必须显示定义

构造器

public 类名(){}

特点

  1. 和类名相同

  2. 没有返回值

作用

  1. new本质在调用构造方法

  2. 初始化对象的值

注意点

  1. 定义有参构造以后,如果想使用无参构造,显示的定义一个无参的构造

this. 表示当前的类

this.变量名=参数名;

面向对象的三大特征

封装

目的---为了更好的保护数据。(数据安全)

关键字:private

功能:按照访问修饰符的的规则进行访问。在类的外部不能直接访问类的封装的属性和方法。(封装的是属性)

访问修饰符 class 类名{

Private 数据类型 变量名;

访问器方法setter getter

Private void 方法名(){};

}

继承

目的-----代码复用及类的功能的扩展。

关键字: extends

继承定义:一个类继承了另外一个类,被继承类称为父类(基类),继承的类称为 子类(派生类)。

*继承类语法:*

抽象类

public abstract class 类名{

和普通类相同;

抽象方法:

public abstract 返回值类型(void)方法名();

}

public class 子类名 extends 父类名{

继承的方法public void 方法名();

}

重写:需要有继承关系,子类重写父类的方法!

  1. 方法名必须相同

  2. 参数列表必须相同

  3. 修饰符:范围可以扩大但不能缩小; public>Protected>Default>ptivate

  4. 抛出的异常:范围,可以被缩小,但不能扩大:ClassNotFoundException-->Exception 大

重写:子类的方法和父类必要一致,方法体不同;

为什么需要重写:

父类的功能,子类不一定需要,或者不一定满足!

多态

目的----可以提高代码的扩展性

关键字:继承的extends 或 接口的instanceof

接口语法:

public interface 接口名{

常量;

public void 方法名();

}

实现接口的语法:

public class 类名 implments 接口名{

实现接口中所有的抽象方法。

}

多态注意事项:

  1. 多态是方法的多态,属性没有多态

  2. 父类和子类,有联系,类型转换异常!ClassCastExeption!

  3. 存在条件:继承关系,方法需要重写,父类引用指向子类对象!Father f1=new Son();

1.向上转型:

当子类的对象赋值给一个父类的引用时,便是向上转型,多态本身就是向上转型的过程

使用格式:父类类型 变量名= new 子类类型();

2.向下转型:

一个已经向上转型的子类对象可以使用强制类型转换的格式,将父类的引用转换为子类引用,这个过程是向下转型。直接创建父类对象的无法使用向下转型;

使用格式:

子类类型 变量名= (子类类型) 父类类型的变量;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值