JAVAOOP总结

一.对象和封装

1.类是对象的类型,对象是类的实例
2.方法重载
在一个类中定义多个方法名相同但是参数列表和返回值不同的方法
3.static关键字
static修饰符可以用来修饰属性、方法和代码块
用static修饰的成员不再属于对象,而属于整个类
适用于团体属性
static关键字修饰的属性允许通过对象调用,并且允许通过对象修改
在给方法添加静态关键字static时,该方法调用的变量必须全部为静态变量
在非静态方法总允许调用静态属性,反之不允许
final 代表常量

static、非private修饰 非static、private修饰
属性 类属性、类变量 实例属性、实例变量
方法 类方法 实例方法
调用方式 类名.属性 类名.方法() 对象.属性 对象.方法() 对象.属性 对象.方法()
归属 单个对象

4.封装

  • 什么是?
    将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
  • 如何实现?
    1)修改类的属性可见性,设为private私有的
    2)创建公有的get与set方法,用于属性的读写
    3)在get或set方法中加入控制语句,对属性值进行合法性的判断
  • 好处?
    1)隐藏类的实现细节,调用都不需要知道具体是怎么实现的。
    2)只能通过规定的方法访问数据,实现数据的安全性。
    3)方便在提供的方法内加入控制语句。
    4)方便修改实现。修改实现在内部修改,跟调用都无关。
二.继承

1.继承
1)符号is-a关系
2)使用extends关键字
3)代码复用
4)多重继承关系初始化顺序

父类属性 >父类构造方法 >子类属性 >子类构造方法

5)不能继承的父类成员
在这里插入图片描述
2.重写
1)方法名相同
2)参数列表相同
3)返回值类型相同或者是其子类
4)访问权限不能严于父类
3.super关键字
1)super关键字用来访问父类的成员
2)super只能出现在子类的方法和构造方法中
3)super调用构造方法时,只能是第一句
4)super不能访问子类的private成员
4.访问修饰符

访问修饰符 本类 同包 子类 其他
private
默认(friendly)
protected
public

5.抽象类和抽象方法
1)抽象类不能被实例化
2)抽象类可以有0~多个抽象方法
3)非抽象子类必须重写父类的所有抽象方法
4)抽象方法没有方法体
5)抽象方法必须在抽象类里
6)抽象方法必须在子类中被实现,除非子类是抽象类
6.final修饰符
1)修饰的类,不能再被继承
2)修饰的方法,不能被子类重写
3)修饰的变量将变成常量,只能在初始化时进行赋值

三.多态
  • 什么是?
    同一个引用类型,使用不同的实例而执行不同操作
    1)同过父类创建多种类型的子类对象
    2)子类实现父类的抽象方法
    3)通过父类对象调用子类方法
    4)多态中最终执行功能的是子类
  • 优点
    1)减少类中代码量
    2)提高代码的可扩展性和可维护性
  • 实现多态几种方式?
    1)使用多态实现思路(实现多态的三个要素)
    编写具有继承关系的父类和子类
    子类重写父类方法
    使用父类的引用指向子类的对象
    2)实现多态的两种形式
    使用父类作为方法形参实现多态
    使用父类作为方法返回值实现多态
    3)向上转型——子类转换为父类,自动进行类型转换
    向下转型——父类转换为子类,结合instanceof运算符进行强制类型转换
四.接口

一个类只能继承一个父类但可以实现多个接口

  • 特性
    1)接口不可以被实例化
    2)实现类必须实现接口的所有方法
    3)实现类可以实现多个接口
    4)接口中的变量都是静态常量
    【属性全都是全局静态常量】
    【方法全都是全局抽象方法】
    【无构造方法】
  • 编码实现
//编写接口
public interface UsbInterface {
   
    void service();
}
//实现接口(多个接口使用“,”隔开)
public class UDisk implements UsbInterface {
   
    public void service() {
   
        System.out.println("123");
    }
}
//使用接口
UsbInterface uDisk = new UDisk();
uDisk.service();
五.异常
  • 什么是?
    异常是指在程序的运行过程中所发生的不正常的事件,它会中断正在运行的程序
  • 如何进行异常处理
    Java的异常处理是通过5个关键字来实现的:try、catch、 finally、throw、throws
    1)try:执行可能产生异常的代码
    2)catch:捕获异常
    3)finally:无论是否发生异常,代码总能执行
    4)throws:声明方法可能要抛出的各种异常
    5)throw:手动抛出异常
try {
   
     // 代码段 1
     // 产生异常的代码段 2
} catch (异常类型 ex) {
   
     // 对异常进行处理的代码段3
     return;
}finally{
   
      // 代码段 4
}
}
public class Test {
   
	public static void divide() throws Exception {
   //声明异常,多个异常用逗号隔开
		  //可能出现异常的代码
	}
	public static void 
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java面经是指在面试过程中常被问到的与Java相关的问题和知识点。下面是一些常见的Java面经问题及其解答: 1. Java的特点是什么? Java是一种面向对象的编程语言,具有跨平台性、简单性、可靠性、安全性和高性能等特点。 2. 什么是Java虚拟机(JVM)? JVM是Java程序运行的环境,它负责将Java源代码编译成字节码,并在不同的操作系统上执行。 3. 什么是面向对象编程(OOP)? 面向对象编程是一种编程范式,它将数据和操作数据的方法封装在一起,通过创建对象来实现程序的功能。 4. Java中的四种访问修饰符分别是什么? Java中的四种访问修饰符分别是public、protected、default和private,用于控制类、方法和变量的访问权限。 5. 什么是Java中的异常处理机制? 异常处理机制是Java中用于处理程序运行过程中出现的异常情况的一种机制,通过try-catch-finally语句块来捕获和处理异常。 6. 什么是Java中的多线程多线程是指在一个程序中同时执行多个线程,每个线程都可以独立执行不同的任务,提高程序的并发性和效率。 7. 什么是Java中的集合框架? 集合框架是Java中用于存储和操作一组对象的类库,包括List、Set、Map等常用的数据结构和算法。 8. 什么是Java中的反射机制? 反射机制是指在运行时动态地获取和操作类的信息,可以通过反射来创建对象、调用方法和访问属性等。 9. 什么是Java中的IO流? IO流是Java中用于输入和输出数据的一种机制,包括字节流和字符流,用于读取和写入文件、网络等数据源。 10. 什么是Java中的设计模式? 设计模式是一种解决常见软件设计问题的经验总结,包括单例模式、工厂模式、观察者模式等常用的设计模式。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值