Java面向对象

一.面向对象的思想

 思想特点:

  • 让复杂的事情简单化
  • 更加符合我们的思想
  • 让我们从执行者变成指挥者

概述:

        Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下, 使用Java语言去设计、开发计算机程序。 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面 向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算 机事件的设计思想。 它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去 操作实现。面向对象的语言中,包含了三大基本特征,即封装、继承、多态。

二.类和对象的概念

1.类(Class)是人们对于客观事物的高度抽象,面向对象方法中的类是一种类型,它是具有相同属性和行为的对象的集合。类是具有相同属性和行为的若干对象的模板。类为属于该类的全部对象提供了抽象的描述,这种描述包括了属性和行为两大部分。

  • 属性:就是该事物的状态信息。
  • 行为:就是该事物能够做什么。

2.对象(Object)是一个应用系统中的用来描述客观事物的实体,是有特定属性和行为(方法)的基本运行单位。可以概括来说:万物皆对象。

3.类与对象的关系

(1)类是对一类事物的描述,是抽象的

(2)对象是一类事物的实例,是具体的

(3)类是对象的模板,对象是类的实体

三.继承

继承是子类调用父类的属性和方法。在Java中通过extends关键字实现;子类不能继承父类private的特性和构造方法;继承之后子类可以重新实现父类的方法,那么调用的时候就是调用的子类重写的方法;Java中只能是单继承的,一个类只可以有一个父类,一个父类可以有多个子类,实例化子类对象时默认优先调用父类。

:String类是被final修饰的类型,final类是不能被继承的,String类是不可变类型(Immutable)类。

  • Super和this的含义:

super:代表父类的存储空间标识(可以理性为父亲的引用)。
this:代表当前对象的引用(谁调用就代表谁)。
  • Super和this的不同:

代表对象不同:
   This:子类调用对象
   Super:父类对象的引用
前提:
   This:没有继承也可以使用
   Super:只有继承了才能用
构造方法:
   This();子类的构造
   Super();父类的构造

继承的目的:父母的被子女继承,表示父母的归属到子女
继承的机制:首先分析多个类的共同特征,把相同的特征和行为抽离出来形成一个基类,可以让这些类继承基类,而不需要在类本身中再定义相同的属性和行为
 

四.抽象类

抽象类:使用abstract关键字进行修饰的类叫做抽象类
        1.抽象类里面不是必须有抽象方法
        2.一个类里面有抽象方法,这个类必须是抽象类
抽象方法:
        1.方法只有声明没有方法体;

        //声明即规定方法三要素:方法名、参数列表、返回值类型
        2.要使用abstract关键字进行修饰

抽象类的特点:

        1.抽象类用abstract关键字来定义
        2.定义中含有抽象方法的类叫做抽象类
        3.抽象类不能实例化
        4.可以有具体方法,可以没有抽象方法

// Animal类
public abstract class Animal {
 
    public void sleep() {
        System.out.println("我趴着睡");
    }
    public abstract void eat(); 
}
// Dog类
public class Dog extends Animal {
 
    public Dog() {
        super();
    }
 
    @Override
    public void eat() {
        System.out.println("我实现了父类方法,狗吃肉");
    }
}
// Cat类
public class Cat extends Animal{
    public Cat() {
        super();
    }
 
    @Override
    public void eat() {
        System.out.println("我实现了父类方法,猫吃鱼");
    }
}
//测试类
public class AnimalTest {
    public static void main(String[] args) {
        Animal a1 = new Dog();
        a1.sleep();
        a1.eat();
        System.out.println("-------------------------");
        Animal a2 = new Cat();
        a2.sleep();
        a2.eat();
    }
}
我趴着睡
我实现了父类方法,狗吃肉
-------------------------
我趴着睡
我实现了父类方法,猫吃鱼

五.接口

  • 接口是一种“引用数据类型”编译后是一个class字节码文件
  • 接口是完全抽象的,是无法实例化
  • 接口支持多继承,一个继承可以继承多个接口
  • 接口包含两部分:常量 抽象方法
  • 接口中的方法都是抽象方法,所以接口中的方法不能有方法体
  • 一个类可以实现多个接口
  • 类和类之间叫做继承,类和接口之间叫做实现

六.多态

多态:是指同一行为,具有多个不同表现形式。(调用同样的方法,执行的是不同的功能)
1.继承口情况
2.在子类中对方法进行了重写
3.父类引用指向子类对象父类类型变量名=new 子类对象Q;
多态的好处:在开发中可以把父类(接口类型)类型定义为方法的形参,在实际调用的时候传入的实际参数就比较灵活,可以传入父类类型的对象,也可以传入任意一个子类类型的对象
多态:
1.继承或者实现【二选一】
2.方法的重写【意义体现:不重写,无意义】
3.父类引用指向子类对象【格式体现】
 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java面向对象编程电子书是一本详细介绍Java面向对象编程概念、原理和实践的电子书籍。本书从基础概念开始,逐步深入到高级主题,使读者能够全面理解Java面向对象编程的核心思想和技术。 首先,本书会介绍面向对象编程的基本理念和原则,例如封装、继承和多态等。读者将能够了解到如何使用Java语言中的类、对象和方法来实现这些概念,并学会如何通过类和对象之间的关系来进行数据和行为的组织。 接着,本书将详细介绍Java中的类和对象的创建、属性和方法的定义以及对象之间的交互。读者将学会如何使用构造函数来创建对象实例,并掌握如何在类中定义属性和方法,并使用它们来访问和修改对象的状态。 另外,本书还会涵盖继承和多态的概念和实践。读者将了解到如何通过继承来创建子类,并使用多态来实现不同对象之间的统一接口。这些技术将大大提高代码的可复用性和可扩展性。 此外,本书还会介绍Java面向对象编程中的其他重要概念,如抽象类、接口、封装和设计模式等。这些概念和技术将使读者更加熟悉Java面向对象编程的整体框架,并能够应用到实际的开发中。 总而言之,Java面向对象编程电子书是一本很好的学习资料,它详细介绍了Java面向对象编程的基本概念、原则和实践。读者通过学习本书,将能够深入理解并掌握Java面向对象编程的核心思想和技术,从而提高自己的编程能力和应用水平。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值