栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA SE(第四天)( 面向对象编程的三大特征)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA SE(第四天)( 面向对象编程的三大特征)

前言:赶进度ing。。。。。。。。。。。。。。。。。。。。。。。。


面向对象编程的三大特征
面向对象三大基本特性:封装、继承、多态

继承
public class  子类名  extends 父类名{}

父类:也被称为基类、超类
子类:也被称为派生类

子类具有父类的属性和方法,还可以在子类中重新定义、追加属性和方法

继承:
    优点:提高代码复用性、维护性    
    缺点:让类与类之间产生了关系,类的耦合性增加了,削弱了子类独立性



定义了一个类,没有继承任何父类,在默认情况下,就继承了Object类(任何类的祖宗)。
在子类方法中访问一个变量:

局部变量 → 当前类中成员属性 → 父类中 → 报错
                               没有


this.age 当前子类age
super.age 当前子类的父类age
age    当前方法中局部变量age



new  对象类();     补全 ctrl+alt+v

子类的所有构造函数都会默认访问父类中的无参构造方法,如果父类中没有无参构造方法,必须在子类构造函数第一条加入父类的有参构造函数。
this(); 和 super();    必须写在构造函数第一条


封装

如何实现封装:
    1.修改属性权限为private(私有)
    2.创建getter/setter方法 (设为public(用于属性的读写))
    3.在getter/setter方法中加入属性控制语句。(验证参数合法性)


封装的规则:
    1.将类的某些信息隐藏在类的内部,不允许外部的程序直接访问。
    2.通过该类提供的方法来实现对隐藏信息的操作和访问。

权限修饰符的具体权限

权限修饰符同一个类同一个包不同包的子类不同包的非子类
private(私有)  √       ×          ×            ×
default(默认)  √       √            ×            ×
protected(受保护的)  √       √            √              ×
public(公开)  √       √            √              √  

         

方法重写注意事项:
    1.私有方法不能被重写,父类中私有方法,子类不能继承。
    2.子类方法访问权限不能比父类低(public>protected>default>private)

继承注意事项:
    1.java中类支持单继承,不支持多继承(一个子类不能有两个父类)
    2.java支持多层继承


tips:
    package:
        1.就是文件夹
        2.作用:对类进行分类管理
        3.相同package下类名称不可以重复。

状态修饰符:
    1.final(最终态):
        final关键字,修饰我们的类(无法继承)、成员属性(相当于定义了一个常量,必须先赋值,无法修        
        改)、成员方法(无法重写)
    2.static(静态):
        static关键字,被类的所有对象共享访问


静态变量访问特点: 直接通过类名.   而不是对象名。
    public class Student(){
        public static school =null;
    }
    
    Student stu = new Student();
    Student.shool = "Tsing university"; √
    stu.shool = "Tsing university"; ×


静态方法中:
    1.可以访问静态成员方法,但不能直接访问到非静态方法,
    2.可以访问静态成员属性,但不能直接访问到非静态成员属性。
    
非静态方法:
    可以访问静态成员方法和静态成员属性,也可以访问非静态方法和非静态成员属性


static关键字用途:
  ①方便在没有创建对象的情况下调用(方法、变量),不依赖对象来访问,只要类被加载,就可以通过类名去访问
  ②Constant(常量):常量名称全大写。
  例子:定义常量(不可变)   public static final int CODE_200 = 200;

多态
多态:
    定义:同个对象,在不同时刻表现出来的不同形态。
    
    
    基本条件:
        1.继承或实现(接口概念)的关系
        2.方法的重写(必须父类与子类有相同的方法)
        3.有父类的引用指向子类
    
    
    访问特点:
        1.成员变量:编译看左边,执行看左边
        2.成员方法:编译看左边,执行看右边
        (编译时父类中必须能找到该成员变量和成员方法)

            左边            右边
        Parent  p =  new Child();
   
    
    优缺点:
        1.好处:提高了程序的扩展性
        2.坏处:不能使用子类的特有功能
   
多态的转型:
    1.向上转型:  Animal dog = new Dog();
        从子到父,父类引用指向子类对象
    2.向下转型:  Dog dog2 = (Dog)Animal();
        从父到子,父类引用转向子类对象(父强转子) 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/841957.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号