有网络网站打不开,gofair外贸建站,深圳住房和城乡建设局官网,360网站做不了网银怎么办第06章#xff1a;随堂复习与企业真题#xff08;面向对象-基础#xff09; 一、随堂复习
1. #xff08;了解#xff09;面向过程 vs 面向对象
不管是面向过程、面向对象#xff0c;都是程序设计的思路。面向过程#xff1a;以函数为基本单位#xff0c;适合解决简单…第06章随堂复习与企业真题面向对象-基础 一、随堂复习
1. 了解面向过程 vs 面向对象
不管是面向过程、面向对象都是程序设计的思路。面向过程以函数为基本单位适合解决简单问题。比如开车面向对象以类为基本单位适合解决复杂问题。比如造车
2. 类、对象
类抽象的概念上的定义对象具体的类的一个一个的实例。面向对象完成具体功能的操作的三步流程非常重要
步骤1创建类并设计类的内部成员属性、方法
步骤2创建类的对象。比如Phone p1 new Phone();
步骤3通过对象调用其内部声明的属性或方法完成相关的功能对象的内存解析 创建类的一个对象创建类的多个对象方法的调用的内存解析 Java中内存结构的划分 Java中内存结构划分为虚拟机栈、堆、方法区程序计数器、本地方法栈虚拟机栈以栈帧为基本单位有入栈和出栈操作每个栈帧入栈操作对应一个方法的执行方法内的局部变量会存储在栈帧中。堆空间new 出来的结构数组、对象① 数组数组的元素在堆中 ② 对象的成员变量在堆中。方法区加载的类的模板结构。
3. 类的成员之一属性或成员变量 属性 vs 局部变量 属性 成员变量 field 字段、域
4. 类的成员之二方法
方法的声明权限修饰符 返回值类型 方法名(形参列表){ // 方法体} 重点返回值类型、形参列表 return关键字的使用
5. 再谈方法
5.1 方法的重载(overload)
方法的重载的要求“两同一不同”同样的类中同样的名字不同的形参调用方法时如何确定调用的是某个指定的方法呢① 方法名 ② 形参列表
5.2 可变个数形参的方法
格式(int … args)
5.3 方法的参数传递机制值传递(重点、难点) 如果形参是基本数据类型的变量则将实参保存的数据值赋给形参。如果形参是引用数据类型的变量则将实参保存的地址值赋给形参。5.4 递归方法
递归方法构成了隐式的循环对比相较于循环结构递归方法效率稍低内存占用偏高。
6. 对象数组
String[] Person[] ; Customer[] 数组元素类型是类类型
7. package、import关键字的使用
package指明声明的类所属的包。import当前类中如果使用其它包下的类除java.lang包原则上就需要导入。
8. oop的特征之一封装性问的还挺多
Java规定了4种权限修饰分别是private、缺省、protected、public。
我们可以使用4种权限修饰来修饰类及类的内部成员。当这些成员被调用时体现可见性的大小。举例 场景1私有化(private)类的属性提供公共(public)的get和set方法对此属性进行获取或修改场景2将类中不需要对外暴露的方法设置为private场景3单例模式中构造器private的了避免在类的外部创建实例。放到static关键字后讲上理论程序设计的原则之一
理论上-高内聚类的内部数据操作细节自己完成不允许外部干涉Java程序通常以类的形态呈现相关的功能封装到方法中。-低耦合仅暴露少量的方法给外部使用尽量方便外部调用。给相关的类、方法设置权限把该隐藏的隐藏起来该暴露的暴露出去9. 类的成员之三构造器
如何定义权限修饰符 类名(形参列表){}构造器的作用① 搭配上new用来创建对象 ② 初始化对象的成员变量 public Account(int i, double b, double a){id i;balance b;annualInterestRate a;}//使用new对象初始化
Account a new Account(1000, 2000, 0.0123);10. 三个小知识
10.1 类的实例变量的赋值过程重要
1. 在类的属性中可以有哪些位置给属性赋值
① 默认初始化
② 显式初始化
③ 构造器中初始化
**********************************
④ 通过对象.方法的方式赋值
⑤ 通过对象.属性的方式赋值2. 这些位置执行的先后顺序是怎样
① - ② - ③ - ④/⑤10.2 JavaBean
所谓JavaBean是指符合如下标准的Java类- 类是公共的
- 有一个无参的公共的构造器
- 有属性且有对应的get、set方法10.3 UML类图
熟悉。
二、企业真题
2.1 类与对象
1. 面向对象面向过程的理解平*金服、英**达
略。
2. Java 的引用类型有哪几种阿*校招
类、数组、接口枚举、注解、记录
3. 类和对象的区别凡*科技、上*银行
略。
4. 面向对象你解释一下项目中哪些地方用到面向对象燕*金融
“万事万物皆对象”。
2.2 Java内存结构
1. Java虚拟机中内存划分为哪些区域详细介绍一下神**岳、数*互融
略。
2. 对象存在Java内存的哪块区域里面阿*
堆空间。 不能放在栈空间。
2.3 权限修饰符封装性
1. private 、缺省、protected、public的表格化作用区域爱*信、拓*思、中*瑞飞
略
2. main方法的public能不能换成private为什么凡*科技、顺*
能。但是改以后就不能作为程序的入口了就只是一个普通的方法。
2.4 构造器
1. 构造方法和普通方法的区别凡*科技、软*动力、中*软
编写代码的角度没有共同点。声明格式、作用都不同。
字节码文件的角度构造器会以init()方法的形态呈现用以初始化对象。
2. 构造器Constructor是否可被overload?鸿*网络
可以。
3. 无参构造器和有参构造器的的作用和应用北京楚*龙
略。 就是初始化的问题。
2.5 属性及属性赋值顺序
1. 成员变量与局部变量的区别艾*软件
6个点。
2. 变量赋值和构造方法加载的优先级问题凡*科技、博*软件
变量显式赋值先于构造器中的赋值。
如何证明我看的字节码文件。