面向对象简介

本文介绍了Java中的面向对象特性,包括引用数据类型的概念,如对象、Person实例和this关键字。详细讲解了类的访问权限修饰符(public,protected,default,private),以及封装、继承和多态的核心概念。封装涉及隐藏类信息,继承用于代码重用和扩展,多态则允许对象在不同状态下表现出不同行为。此外,还讨论了构造方法、方法重写、抽象类和接口的重要性。
摘要由CSDN通过智能技术生成

对象与引用
    引用数据类型
      什么是引用数据类型?
      除了基本数据类型以外的变量类型都称为引用数据类型
        new Person();  在堆内存空间中创建了一个对象
        Person  p1  声明一个引用变量
        =  把对象在内存空间中的地址赋给了左边的引用变量
this 关键字
this 表示当前调用的对象
static 静态  修饰类的属性,方法,代码块,内部类
    
    随着类的加载而加载  :类一旦被加载,加载对象就会被加载初始化
    优先于对象存在
    修饰的成员,被所有对象共享
    可不创建对象
包:理解为是一个像文件夹,组织管理类
     是类的命名空间
     类名 Car(类名的简称)
     类名==全类名==包名(类的地址)+类名
     包的命名规范
     字母都小写com(项目名称 org开源组织,gov政府,edu教育类)
               ffyc 公司名称
               javaoop 项目的名字
               按照不同的功能来管理命名
     第一级   指该项目的类型   如com,org,gov
     第二级   指项目所开发或者运行的公司名称   如 oracle,sun,huawei
     第三级   指项目的名称   如 bcms,oa,erp,cms
     第四级   指项目模块的名称   如 bean,action,exception
     
     包可以更好得管理逻辑相关的类,可以控制不同包之间的访问权限
     作用:
          区分同名类
          按照不同的功能管理类
          访问权限的控制
访问权限修饰符
     四个权限修饰符(由大到小)
         public   公共权限   修饰类,属性,方法
         protected   受保护权限   修饰属性,方法
         默认
         private   私有权限 修饰属性,方法
     
用访问权限修饰符修饰成员变量,成员方法,修饰是否在其他地方可见

面向对象语言的三大特征:
    封装
    继承
    多态
    
    
封装:  一词多义 

面向对象语言中的封装:指通过访问权限修饰符,使得类中的信息是否对外可见(隐藏类中的信息)


面向对象特征:继承  关键字: extends

什么是继承?
   子  继承  父
为什么用继承?
   代码重用   子继承父之后就可以使用父中的功能,不需要重新定义.
   代码扩展   在自己类中扩展自己特有的功能.不影响别的类  多重继承传递

 具体的语法
     首先   有一个基类--派生出--->新的类
     把共有的属性和行为定义在基类中,让其他类去继承即可
     同一类的事物,,都可以使用继承关系来实现设计
       符合什么是什么的关系,即is-a关系
       是实现代码重用的根基
       
       当一个类没有继承其他类时,默认继承Object类
       是java中所有类的父类

1.继承中的构造方法
子类构造方法在执行时,会先调用父类的构造方法
构造方法的作用是用来为对象中的属性进行赋值操作
因为子类拥有父类成员,所以需要对父类中的成员也要初始化
在自类构造方法中,默认是有调用的,使用的super()调用父类的无参构造 
必须在子类构造方法的第一行,先要确保父类初始化
使用super表示父类,对父类中成员(构造方法,成员变量,成员方法)进行访问
2.方法重写    
    重写/覆写/覆盖
   应用场景:
       当父类中的方法实现(功能)不能满足子类需求时,可以在子类中对父类中的方法进行重写(覆盖)
       当子类实现的功能与父类不同时,可以在子类中对父类中的方法进行重写(覆盖)
       @override  注解标签,表示此方法是从父类中重写而来的,在编译期间就会进行语法上的校验
    访问需要大于等于父类权限 
    构造方法,静态方法不能重写.成员变量不存在重写
3.抽象类   
    类是抽象的,是概念,不能直接用    
    抽象方法--->概念方法--->不能用的
    abstract修饰的方法叫抽象方法
    抽象的方法没有方法体,没有具体的实现,主要是用来定义功能
    abstract修饰的类叫抽象类
    一旦这个类中有不完整的,没有实现的抽象方法,那么这个类也就必须是一个抽象的类 
 4.面向对象特征--多态
     多态-- 多种状态
     面向同一种事物,在不同时刻表现不同的状态
     
     要有继承(包括接口的实现)(前提条件)
     要有重写(前提条件)
     父类引用指向自类对象
 
 
 
 
 
 2.final关键字
 
 
 
 
 
 3.接口
        既陌生又熟悉
        接口
        usb接口   连接串口   是一种标准规范   大小,传输数据...

        抽象类:不完整的类,里面包含抽象方法,但是还可以定义成员变量,成员方法,构造方法
        接口--->规则,规范  用来定义功能    更彻底的抽象   接口,抽象类--->定义,抽象
         
         
        在实际复杂的程序设计中,上层一般都是“抽象的”,面向的是抽象进行编程
        架构是定义接口,定义抽象类
        业务程序去对接口,抽象类进行实现
        
        学接口的具体语法:interface修饰的是接口
        接口中可以定义哪些内容
        jdk8之前   只能定义抽象方法和静态常量
        
        jdk8之后    可以定义抽象方法和静态常量
                    还可以定义默认方法和静态方法

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

020709

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值