面向对象基础小记

面向对象

方法调用

静/动态方法的调用
//Student方法
public class Student {

    //非静态方法
    public void say(){
        System.out.println("学生");
    }

    //静态方法
    public static void Write(){
        System.out.println("学生2");
    }
}

//静态方法的调用,直接调用
Student.Write();
//非静态方法的调用需要实例化
Student student = new Student();
student.say();

static随着main方法一起加载,而非静态的方法要实例化以后才存在。

实参和形参

实际参数和形式参数的类型要对应!

构造器详解

一个即使什么都不写,它都会存在一个方法

构造器特点:和类名相同,没有返回结果

作用:使用new关键字,本质上是在调用构造器,用来初始化值

  1. 使用new关键字,本质上是在调用构造器,用来初始化值(无参)

    public Person(){
        
    }
    
  2. 有参构造,一旦定义了有参构造,无参就必须显示定义

    public Person(String name){
        this.name = name;
    }
    

    快捷键Alt+Insert快捷打开构造器

小结类与对象

  1. 类与对象
    类是一个模板(抽象),对象是一个具体的实例

  2. 方法
    定义,调用

  3. 对应的引用
    引用类型:基本类型(8)
    对象是通过引用来操作的,栈—>堆

  4. 属性:字段Field,成员变量
    默认初始化
    数字:0
    char:u0000
    boolean:false
    引用:null
    修饰符 属性类型 属性名 = 属性值

  5. 对象的创建和使用

    • 必须使用new 关键字创建对象,构造器 Person xiaoming = new Person();
    • 对象的属性 xiaoming.name
    • 对象的方法 xiaoming.sleep()

  6. 静态的属性:属性

    动态的行为:方法

封装

作用
  1. 提高程序的安全性,保护数据
  2. 隐藏代码的实现细节
  3. 统一接口
  4. 增加系统的可维护性

继承

super
  1. super调用父类的构造方法,必须在构造方法的第一个。
  2. super必须只能出现在子类的方法或者构造方法中!
  3. superthis不能同时调用构造方法
区别

代表的对象不同:

this:本身调用者这个对象

super:代表父类对象的应用

前提

this:没有继承也可以使用

super:只有继承条件才可以使用

构造方法

this():本类的构造

super():父类的构造

重写

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

  1. 方法名必须相同
  2. 参数列表必须相同
  3. 修饰符:范围可以扩大,但是不能缩小:public>Protected>Default>private
  4. 抛出异常范围可以缩小,但是不能扩大:ClassNotFoundException--->Exception

重写,子类的方法与父类必须一致,方法体不同

重写的原因:父类的功能,子类不一定需要,或者不一定满足!

Alt+Insertoverride

多态注意事项

  1. 多态是方法的多态,属性没有多态
  2. 父类和子类有联系,类型转换异常,ClassCastException
  3. 存在条件:继承关系,方法需要重写,父类引用指向子类对象,Father f1 = new Son()
    不能重写的
    static方法,属于类,不属于实例;final常量;private方法

static方法与类一起加载且只在第一次加载一次

抽象类

  1. 不能new这个抽象类,只能靠它的子类去实现它
  2. 抽象类中可以写普通方法
  3. 抽象方法只能在抽象类中

接口的作用

1Java的接口用于约束、规范
2、定义不同的抽象方法工不同的人实现
3public abstract
4public static final
5、接口不能被实例化,接口中没有构造方法
6implements可以实现
7、使用接口必须重写接口里面的方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值