Java基础知识总结(超详细整理)

发布于:2025-05-19 ⋅ 阅读:(16) ⋅ 点赞:(0)

一:概述

        1.1Java类及类的成员

                属性、方法、构造器、代码块、内部类

          (1)数组

                        java虚拟机内存划分

                                

                        各区域作用

                                

                        内存解析

                                

                        基本使用

                                  

                                两个变量指向一个一维数组

                                        没有new就不会在堆里新开辟空间

                                                      

 

                (2)对象数组

                                

                (3)方法

                        形参:方法声明时,一对小括号声明的一个或多个形式参数,简称形参

                        实参:方法被调用时,实际传递给形参的变量或常量,就称为实际参数,简称实参

                                

                        值传递机制场景

                                方法内声明的局部变量     

                                基本数据类型传递的是数据值           

                                        

                                引用类型传递的是地址值

                                           

                               形参与实参

                                             

二:面向对象基础

        2.1面向对象的特征

                封装、继承、多态(抽象)

        2.2其它关键字的使用

                This、super、package、import、static、final、interface、abstract

        2.3面向对象和面向过程

                (1)面向过程

                                

                (2)面向对象

                        先找实现事情涉及到的主体(类)、后看类完成任务需要具备什么功能(方法)

                                

        2.4类和对象

                        

                (1)类的声明和使用

                        类的设计:设计类的成员,类的设计是为了实例化对象,调用类的属性和方法

                                        

                (2)类的实例化

                        创建对象,是为了调用属性的类和方法。对象的实例化是对获取到类的属性和方法赋值

                         

                (3)对象在内存中分配涉及到的内存结构

                        刚创建对象时存在默认值

                        创建对象即开辟了空间,而变量是获取到了空间的首地址

                        两个变量指向的是同一个对象

                                 

                (4)通过方法调用对象

                        每调用一个方法,相当于一个新的栈针

                        引用类型变量其实都是地址

                        返回值返回给调用者,返回给对象没有用,因为对象是栈针

                        main函数结束后,对应指针出栈,p1没了,堆内p1对应空间无指针指向,后期垃圾回收器将堆回收

                                

三:面向对象三大特征

        3.1 封装

                (1)权限修饰符

                                

                (2)构造器

                        每个类都有构造器,包括抽象类(不能造对象)

                        声明

                                权限修饰符 类名(新参列表){}

                                        

                        作用

                                

                        使用说明

                                

                (3)实例变量赋值过程

                        分类

                                

                        执行顺序判断:根据打印值是否覆盖判断

                                   

                       执行先后顺序 执行次数

                                  

                 (4)JavaBean

                                JavaBean是一种Java语言写成的可重用组件

                                  

                                ideal技巧

                                Alt+inset:创建get、set方法

                   (5)关键字this

                                使用场景

                                        

                                概述

                                        

                                调用属性和方法

                                        针对于方法内的使用情况(准确的说是非static1修饰的方法)

                                                

                                        构造器内使用情况

                                                  

                                                

                                        this调用构造器

                                                

                                        This()调用当前空参构造器

                                                

        3.2 继承

                        

                (1)场景

                                继承不能打破封装性(虽然继承了但不能用)

                                

                (2)使用说明

                                

                (3)默认父类

                                

                (4)多层继承

                                

                (5)方法重写

                                定义

                                        子类对父类继承过来的方法进行的覆盖、覆写的操作,就称为方法的重写

                                        

                                遵循规则

                                        子类不能重写父类中声明为private权限修饰的方法

                                        

                (6)super调用构造器

                        使用场景

                                

                        属性不覆盖

                                若子类中声明了与父类同名属性,子类中包含两个同名属性

                                        

                        super调用属性、方法

                                        

                        super调用构造器

                                子类继承父类时,不会继承父类的构造器

                                在子类构造器首行  

                                        

                        子类继承父类时不继承父类构造器,构造器只在同名类中有

                        子类构造器首行默认调用父类空参构造器

                (7)子类对象实例化

                        从结果来看,体现为类的继承性

                                

                        从过程来看

                                

                        创建对象是new,构造器是用于初始化的

                                

        3.3 多态

                (1)定义

                        新建的对象必须为定义的变量类型的子类

                                  

                 (2)使用前提

                                

                (3)适用性

                                

                         使用场景

                                

                (4)好处

                                避免多次重载

                                新增子类时不用修改方法,对拓展进行开放,对修改进行关闭

                                    

                (5)向下转型

                                父类变量接受了子类对象后,不能调用子类拥有的特定方法

                                                

                (6)static

                                定义

                                实例变量是指每个对象都有自己的变量,被一个类所有实例所共享的成员变量叫类变量,不用创建对象也有

                                

                                使用

                                        一个更改,其它人用的时候也是改变了的(在内存空间中只有一份)

                                static修饰方法

                                        

                (7)单例设计模式

                                定义

                                        

                                实现思路

                                        

                (8)代码块

                                随着类的加载而执行

                                    

                                案例使用

                                        

                (9)Final

                                fina修饰类表示类不能被继承,final修饰表示方法不能被重写

                                final修饰的变量其实就变成了常量,意味着一旦赋值,就不可更改

                                        

     

              


网站公告

今日签到

点亮在社区的每一天
去签到