- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java语言基础学习完本章后,你应该知道并掌握源文件布局内存模型.doc
Java语言基础
学习完本章后,你应该知道并掌握:
源文件布局
内存模型
数据类型
标识符、关键字
语句与表达式
流程控制
运算符
值传递
访问控制
概述
本章主要讲解Java语言的语法,万丈高楼平地起,如果打的地基不牢,修的越高越容易倒塌。这个道理依然适用于我们学习的过程,所以在开始后续学习之前,我们就必须把Java的语法搞清楚。
任务分析
本章按照以“知识点切入”的方式来组织内容,每个同学要完成工作任务一节列出的所有任务。
时间:12课时
相关知识
程序结构,C语言基础,变量,内存,流程控制等;
工作任务
文件布局
新建train的Java工程,新建TestExample类,代码如下:
package com.hwadee.train.grammar;
import java.lang.System;
class Example {
private int i = 1;
public void firstMethod() {
int i = 4, j = 5;
this.i = i + j;
secondMethod(7);
}
public void secondMethod(int i) {
int j = 8;
this.i = i + j;
System.out.println(this.i);
}
}
public class TestExample {
public static void main(String[] args) {
Example e=new Example();
e.firstMethod();
}
}
源文件布局
从TestExample的源码我们要得出以下结论:源文件从上到下是包声明语句,如果这个类中要用到其他类使用import语句,接下来是类的申明;注意以下规则:
源文件中可以申明多个类,但是生成的class文件是分开的;
源文件中有且只能有一个public类,且类名是和源文件名是一致的;
编译和执行时在类路径中会默认加入java.lang包下的类;
import语句可以导入包下的所有类(但不包含子包),也可单独导入一个类;
一个类中含有一个main方法,这个类就构成了一个应用,可以用java命令运行它,main方法是一个应用的入口;
命名规范
包名是文件存放的目录,常以org、com开头,接下来是“机构(公司名).项目名.模块名”,采用小写形式
类名代表一种类型,常采用名词,比如:人、动物、电脑、食品、学生、老师等,采用首写字母大写其于小写的形式,一个类如果由多个单词组成,单词首字母都大写
变量代表存放数据的单元,采用首字母小写的形式
方法代表对象的行为,常采用动词,采用首字母小写的形式
类结构
modifiers class name {
[attribute_declarations]
[constructor_declarations]
[method_declarations]
}
图4.4.1 类结构图
从上面的代码可以看出一个类是由属性、构造器、方法组成的,类是Java编程的基本单元;每个类都由一对大括号标记类的开始和结束,括起来的部分称为“类体”;Java程序员的职责就是设计类然后创建对象并调用,让程序按照预期结果运行下去;
属性
modifiers type name
图4.4.2 类属性
类中的每个属性声明都应该具有3个要素:访问限定+变量类型+变量名;
方法
modifiers return_type name([argument_list]){
[statements]
}
图4.4.2 类方法
每个方法都由一对大括号标记类的开始和结束,括起来的部分称为“方法体”,每个方法都应该具有例子中的基本结构;
内存模型
内存模型
图4.4.1 JVM内存模型
heap:存放对象成员变量的数据,好比宾馆房间
java stacks:存放方法局部变量的数据,好比服务台
method area:存放字节码的区域
对于大家来讲这3个部分是要搞清楚的,其他的如果有兴趣可以深入研究;在“对象初始化”一节中我们将从对象创建开始进行分析这3部分的作用;
对象初始化
创建对象时到底发生了什么以及内存中有什么变化?我想这是所有学习Java的人应该要搞清楚的事情,我们把对象创建过程称为对象创建“四步曲”:
分配内存、成员变量默认初始化
成员变量显示始化
构造方法被调用
引用变量被赋值
接下来分析TestExample类的main方法中的代码:Example e=new Example();以后在内存中的变化如下图:
图4.4.2 内存模型
第一步:栈内存单元“e”开辟,但没有值(问号表示)
第二步:堆内存开辟,成员变量“i”默认初
您可能关注的文档
- 9.1Matlab软件概述-教务管理系统.ppt
- 9.3对象―关系数据库.ppt
- 950117.ppt-罗老师的网站.ppt
- 97-国立屏东科技大学资讯管理系.doc
- 97高三准备学测补救教学—地理科(主讲魏玉蕙老师)-成功高中.doc
- 99.12.09-医伦与法律-自愿(课程讲义).ppt
- 9数据库的安全管理.ppt.ppt
- ABC、双ABC、销售额和库存金额进行透视.ppt
- AC990会计软件常用问题解答Q我单位用的是ac990会计软件,昨天在.doc
- AccessMedicine使用指南-广东医学院.ppt
- 工业培训新趋势:2025年元宇宙技术应用案例分享.docx
- 跨境电商美妆护肤物流配送自动化设备应用前景分析.docx
- 2025年箱包配饰电商直播运营中的品牌故事讲述与传播策略报告.docx
- 2025年跨境景区新能源电动观光车运营服务标准制定报告.docx
- 2025年智能垃圾分类跨境资源化利用产业园智能化安全风险防控报告.docx
- 2025年跨境电商物流成本结构优化策略深度解析报告.docx
- 智能交通系统在2025年城市交通拥堵治理中的绿色出行模式研究.docx
- 辉瑞-BioNTech疫苗研发合作项目融资策略与风险管理报告.docx
- 科技企业专利布局策略规划与2025年市场竞争策略分析.docx
- 2025年半导体材料测试技术在半导体器件可靠性设计中的应用报告.docx
文档评论(0)