面向对象的三条主线

本文详细探讨了面向对象的三条主线,包括类的组成部分(属性、方法、构造器、代码块和内部类),类的初始化,以及面向对象的三大特性——封装、继承和多态。同时,讲解了相关关键字如this、super、static、final和abstract的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面向对象的三条主线

1、类及类的成分

1.1、Java程序是关于类的设计。类从代码的角度:并列关系;从执行、设计的角度:关联关系、继承关系、聚合关系

1.2、类的成分:属性、方法、构造器、代码块、内部类

1.2.1、属性:①变量的分类:成员变量、局部变量(方法的形参、方法内部、代码块内部)

基本数据类型(8种,不同的数据类型对应 不同的默认初始化值)VS应用数据类型(3种,数组、接口、类 ,其默认初始化值为null)

  ②属性的声明格式:修饰符  数据类型  变量名=初始化值;

 ③对属性赋值的操作:1.默认初始化  2.显示初始化3.代码块的初始化  4.构造器的初始化   5.调用方法、属性进行赋值

1.2.2、方法:①格式:修饰符(static、final、abstract)返回值类型 方法名(形参列表){方法体}

②方法的重载(overload)  vs  方法的重写(override overwrite)

③方法的参数传递:值传递

1.2.3、构造器:①构造器的作用:1.创建类的对象   2.初始化对象的成员变量

②构造器也是可以重载的

1.2.4:、代码块:主要作用:用来初始化成员变量

分类:静态的代码块  vs  非静态的代码块

1.2.5、内部类:①分类:成员内部类(static成员 vs  非static成员) vs  局部内部类(方法内部声明的类)

②掌握:1.如何创建成员内部类的对象 2.如何区分调用外部类 、内部类的变量(尤其是变量重名时)  3.局部内部类的使用

1.3、类的初始化

1.3.1、内存解析

①、栈:局部变量、对象的引用名、数组引用名

②、堆:new 出来的“东西”

③、方法区:字符串常量池

④、静态域:存放类中静态的变量

2、面向对象的三大特性

1.封装

①、通过私有化类的成员变量,通过公共的getter和setter方法类调用和修改

②、还可以对类的其他结构进行封装

③、权限修饰符:public、protected、缺省、private

2.继承(extends)

通过让一个类a继承另一个类b,就可以获取b类中的结构(主要的:属性、方法、构造器)

Java中的类的继承性:单继承的

3.多态

①、体现:方法额重载和重写:子类对象的多态性  如:Person(父类) p=new Student()(子类);

②、子类对象多态性的使用:虚拟方法的调用

③、向上转型、向下转型Student s=(Student)p


3、其他有关的主要关键字:this、super、import、package、abstract、static、final、interface等、

①this:修饰属性、方法、构造器。表示:当前对象或当前正在创建的对象

②super:修饰属性、方法、构造器。显示的调用父类的相应的结构,尤其是子父类有重名的方法、属性

③static:修饰属性、方法、代码块、内部类。随着类的加载而加载

④final:修饰类、属性、方法。表示最终的

⑤abstract:修饰类、方法。表示该类和方法是抽象的

⑥interface:表示一个接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jason_it学习分享

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值