打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JAVA学习笔记之类初始化,重载,软件设计流程和门面模式

先来说说 Static 关键词价绍

修饰变量,又叫类变量。 // 类名.属性名 = 10;

修饰方法,静态方法。 // 类名.方法名( );

实例变量与静态变量的区别?

实例变量是属于对象的,静态变量是属于类的,分配内存和初始化的时机也不同,静态变量要早于实例变量。

创建对象之前还有那些底层工作?

类初始化,在第一次使用这个类的时候,我们要先进行类初始化。(类的初始化只进行一次)

1.在类创建对象的时候

2.访问类的静态属性的时候

3.访问类的静态方法的时候

4.使用java命令运行一个类的时候

类初始化时到底做什么?

1.在Static Area(Method Area :方法区)分配空间把类的.class文件加载到其中;

2.JVM将要验证这个文件是不是符合java虚拟机的规范的文件,看看是不是有CAFFBABE有的话就认同是符合JVM规范的文件。

3.给静态变量和静态初始化代码块中的属性分配空间,默认初始化。

4.声明时初始化,静态初始块初始化,按照代码从上到下的顺序初始化。

静态变量是隶属于类的,多个对象是共享一个Static资源的。

静态代码块(静态方法)不能访问非静态成员(实例成员,实例方法),原因:类初始化优先于对象初始化,那是对象的实例变量还不存在。

编译后的代码静态代码和非静态代码都是放在方法区中。

JVM将内存中分为5块:

  1. 栈(虚拟机栈):主要是为了执行Java程序的

  2. 堆:

  3. 方法区(常量池):

  4. 本地方法区:调用其他语言的程序

  5. PC(计数器):记录下一跳指令地址的地址

方法的重载(OverLoad):

什么是方法的重载?

多个方法,方法名相同参数列表不同,则在这多个方法之间就叫方法的重载。

参数不同的几种形式:

1.参数的个数不同

2.参数的类型不同

3.参数的顺序不同

重载 又叫静态连编(静态绑定,前期绑定)。

绑定:调用方法introduce,到底要调用那一块introduce代码叫做绑定。

静态绑定:在编译的时候就已经知道要调用那一块代码。

设计模式:对同一中问题,有一种固定的解决方案 ,开发一个软件的流程(瀑布模型)

1.问题的定义 做什么

2.可行性分析 市场上看能不能赚钱 技术上看看能不能做下来

3.需求分析 询问客户 软件要有什么功能

4.概要设计 怎么做 考虑大概 软件需要弄成多少个模块

5.详细设计

详细考虑模块功能 类 方法 参数

6.编码

7.测试 1>单元测试 :程序员自己测试自己的程序

2>集成测试:把程序员写的代码凑到一块一起测试 测试工程师 JIRA bug管理工具

根据看不看代码分为3中测试:

黑盒测试:不看代码测试

灰盒测试:介于两种测试之间

白盒测试:看代码测试

3>系统测试:把软件和硬件结合起来,模拟一个真实的环境 测试

4>验收测试:根据用户是谁有分为两种,Alpha测试和Beta 测试

Beta测试版:是将软件发布到公司外部去,让最终用户使用。

Alpha测试版:在公司内部客户测试,让内部用户来测试。

8.上线运行

9.维护

面试题1:

面试时必问请说出一种设计模式?并将它简述其要点?

门面模式(facade):把多个方法的调用封装到一个方法里,对外提供一个统一的接口,简化系统的使用。

面试题2:什么是重载(OverLoad)?

答:1.方法名相同 2.参数列表不同 的方法之间叫做重载

参数列表不同的几种形式:

1.参数的个数不同

2.参数的类型不同

3.参数的顺序不同

方法名之间,参数列表相同,返回值相同的方法之间叫不叫重载?

答:不叫,会报错,Duplicate method!编译器是靠参数列表的不同来确认调用哪一个方法,而返回值是运行的时候才得到的。因此编译器在碰到返回值不同的函数时,就会混乱,认为他是同一个方法,不知道调用哪一个,则就会报错。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
eclipse3.2中配置junit(转载自网上)
Java类的方法总结(目前最火的9种方法总结梳理)
Java封神之路:Java面试备战(五)
《Java面向对象程序设计》05 重载和构造方法写字字帖
Java基础
Java 已老,Kotlin 或将取而代之!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服