导图社区 java面向对象
java第三四章面向对象思维导图主要介绍了面向对象编程的基本概念、类和对象、封装、继承和多态等核心概念。这些概念是Java面向对象编程的基础,也是理解和设计复杂程序的关键。介绍详细,知识全面,希望可以对大家有所帮助!
社区模板帮助中心,点此进入>>
python思维导图
Java日常技术
java中io流图解
Java继承与多态
职场必看!Java编程思想思维导图
python留言网站
Python入门
python基础知识点简单总结
J2EE复习大纲
《C语言程序设计》思维导图
面向对象
1
面向对象的思想
1、封装性
2、继承性
3、多态性
2
对象
定义
对象是面向对象编程中的核心概念
对象的创建与使用
1、使用new关键字 2、使用Class类的newInstance()方法 3、使用Constructor类的newInstance()方法
对象的引用传递
在函数调用中,将对象的引用地址作为参数传递给方法,而不是对象本身
访问控制
是一种网络安全措施,旨在防止未授权的资源访问,确保计算机系统和网络中的特定资源或信息只能被授权用户访问
3
封装性
为什么要封装
为了保护类内部的数据,确保数据的安全性和完整性,同时提高代码的可维护性和可扩展性
将数据和相关操作封装在一个类中,对外只提供有限的访问接口,这样可以有效地隐藏对象的内部实现细节,防止外部直接访问和修改,从而减少错误和冲突的可能性
如何实现封装
1、将类的实例变量声明为私有(private),以防止外部直接访问和修改这些变量。 2、提供公共的getter和setter方法,用于获取和设置这些私有变量的值。
4
构造方法
定义构造方法
1、方法名必须与类名完全匹配。 2、不要声明返回类型。 3、不能被static、final、synchronized、abstract、native修饰。 4、没有return语句返回值
构造方法的重载
public class Test { public Test() {} // 无参构造方法 public Test(String name) { this.name = name; } // 有参构造方法 public Test(int id) { this.id = id; } // 另一个有参构造方法 }
方法的重写
是子类对父类中已存在的方法进行重新定义的过程。这种机制允许子类根据自己的需求修改或扩展父类的行为,从而实现多态性和代码的灵活性、可维护性和可读性
5
this关键字
使用this关键字调用本类中的属性
public class Person { private String name; public void setName(String name) { this.name = name; // 使用this来访问类的成员变量 } }
使用this关键字调用成员方法
public class Test { public void methodA() { this.methodB (); } public void methodB() { // 方法体 } }
使用this关键字调用本类的构造方法
public Classname(int param1, int param2) { this(param1); // 调用无参构造方法 }
1、this语句只能出现在构造方法的第一行 2、构造方法之间的调用只能通过this语句来完成
6
代码块
普通代码块
也称为局部代码块,通常用于方法体内,可以嵌套在其他代码块中。普通代码块的作用是限定变量的生命周期,及早释放内存,提高内存利用率
构造代码块
也称为实例化代码块或构造器代码块,每次创建对象时被调用一次,但优先于类的构造函数执行。构造代码块主要用于初始化对象的状态
7
static关键字
静态属性
静态方法
Java中定义一个静态方法,需要使用static关键字
特点:1、不依赖实例:静态方法不依赖于类的实例,可以直接通过类名调用 2、只能访问静态成员:静态方法只能访问类的静态变量和其他静态方法,不能访问非静态成员 3、内存分配:静态方法在类加载时就已经加载到内存中,并且在类的生命周期内一直存在
静态代码块
通过static关键字声明。它在类被JVM加载到内存时自动执行,并且只执行一次
作用:初始化静态变量:静态代码块可以用来为类的静态变量进行初始化。 执行类加载时的操作:例如加载驱动程序、执行数据库连接等。 优化程序性能:通过在类加载时就完成某些操作,可以减少运行时的开销
super关键字
当子类和父类有相同名称的成员变量时,可以使用super来访问父类的该成员变量,以避免混淆
final关键字
final关键字修饰类
当一个类被final修饰时,该类成为最终类,无法被继承
修饰方法
一个方法被声明为final时,这个方法将成为最终方法,无法被子类重写
修饰变量
核心作用是确保这些元素的一致性和不可变性
instanceof关键字
8
类
继承
概念:允许一个类(子类或派生类)从另一个类(父类或基类)继承其属性和方法
ava支持单一继承,即一个子类只能有一个父类。这意味着一个子类不能同时继承多个父类。然而,Java允许通过接口实现多继承,因为接口可以被多个类继承
抽象类和接口
抽象类
抽象类是通过abstract关键字定义的,它不能被实例化,但可以被其他类继承。抽象类通常包含一个或多个抽象方法,这些方法没有具体的实现,需要在继承抽象类的子类中实现
接口
定义了一组方法签名,但不提供这些方法的具体实现
与抽象类相比,接口不能包含任何实现代码,只能声明方法
object类
所有类的父类
内部类
成员内部类
局部内部类
静态内部类
匿名内部类
9
多态
概述
向上转型和向下转型
对象类型的转换
向上转型指的是将子类对象赋值给父类引用 向下转型则是将父类引用赋值给子类对象
特殊类
两个类