JAVA语言学习
java语言程序设计基础篇(第八版)_完整版

• 这些信息可能需要几个小时、几天、几 个月甚至几年才会被使用。二级存储单 元也称为外存储器,外存或称为辅存。
• 计算机运行的过程,就是顺次执行程序 中指令的过程。计算机的指令以及运行 时数据都是采用二进制数表示的。下面 举一个简单的例子说明计算机的运行。
.
17
1.1.1计算机的组成与运行
.
10
计算程序 原始数据
输入设备
计算结果
输出设备
外存储器
取数
内存
存数
运算器
外
部
设
指令
备
接
口
控制器
指令数据线
控制信号线
图1-1计算机的基本组成
.
11
1.1.1计算机的组成与运行
• 1)输入单元。输入单元是计算机接收信 息的部分。它从各种输入设备读取信息 (数据和计算机程序),并把这些放置 到其它处理信息的单元中。当今计算机 的大多数信息是通过键盘输入的,但也 逐渐出现使用其它许多输入设备来进行 信息输入,如扫描仪、声音输入设备等。
.
6
1.1.1计算机的组成与运行
• 我们操作过计算机的人都知道,计算机 就是一种设备,它能让我们进行文字处 理,绘制图形,玩游戏,听音乐,制作 动画,上网查询信息和观看网络电影, 等等。这是从计算机应用角度上的认识, 实际上,计算机是能够以比人快几百万 甚至几十亿倍的速度执行计算和逻辑判 断的设备。这种说法可能让人感到有点 神奇甚至迷惑:
.
15
1.1.1计算机的组成与运行
• 当要把内存中信息用于计算时,CPU会 把这种请求通知其内部的运算器;当要 把内存中的信息发送给某个输出设备时, CPU就会告诉输出设备。
java培训总结范文8篇

java培训总结范文8篇篇1Java培训总结报告一、培训背景与目的随着信息技术的飞速发展,Java作为一种流行的编程语言,广泛应用于各个领域。
为了提高自身的编程技能,更好地适应市场需求,我参加了本次Java培训课程。
本次培训旨在帮助学员系统掌握Java语言的核心知识,熟悉相关技术和工具的应用,以便能够在实际项目开发中灵活运用。
二、培训内容本次Java培训为期一个月,主要涵盖了以下内容:1. Java语言基础:包括变量、数据类型、运算符、流程控制等基础知识。
2. 面向对象编程:详细介绍了Java的面向对象特性,如类与对象、继承、封装和多态。
3. 常用API使用:讲解了Java标准库中的常用类和方法,如字符串处理、日期时间处理、文件操作等。
4. 异常处理与集合类:学习了Java中的异常处理机制以及集合类的使用方法。
5. 多线程编程:掌握了Java中实现多线程的多种方式以及线程间的同步与通信。
6. 网络编程与数据库连接:学习了Java网络编程基础以及使用JDBC连接数据库的方法。
7. 框架技术:介绍了流行的Java开发框架,如Spring、Hibernate等,并进行了实践操作。
三、培训过程与体会在培训过程中,我深感自己收获颇丰。
1. 系统学习:培训课程安排合理,内容从基础到高级,循序渐进,有助于学员系统掌握Java知识。
2. 实战演练:培训过程中不仅有理论知识的学习,还有大量的实战演练,通过项目实践加深了对知识的理解和运用。
3. 互动交流:培训过程中,学员之间互相交流,共同探讨问题,增进了彼此的了解和友谊,也提高了自己的学习能力。
4. 答疑解惑:培训老师耐心解答学员的疑问,对于难以理解的知识点进行了深入讲解,使我对Java编程有了更深入的了解。
四、培训收获与提升通过本次培训,我在Java编程方面取得了显著的进步:1. 掌握了Java语言的核心知识,能够熟练编写基本的Java程序。
2. 了解了Java开发的相关技术和工具,如版本控制工具Git、集成开发环境Eclipse等。
java语言程序设计基础篇(第八版)课件_完整版

Java语言程序设计基础篇(第八版)课件_完整版第一章 Java语言概述Java是一种跨平台的编程语言,可在各种操作系统上运行。
它是一种面向对象的语言,具有高度的可移植性和可扩展性。
本章将介绍Java语言的特点、发展史和应用领域。
同时,还会介绍编写Java程序的开发环境和运行环境。
1.1 Java语言特点Java语言具有以下特点:•简单易学、易于使用•面向对象的设计思想•可移植性强•安全性高•高性能1.2 Java语言的发展史Java最早由Sun Microsystems于1995年发布。
自发布以来,Java已经逐渐成为全球范围内最流行的编程语言之一。
Java的发展历程经历了以下几个版本:•JDK 1.0(1996年)•JDK 1.1(1997年)•J2SE 1.2(1998年)•J2SE 1.3(2000年)•J2SE 1.4(2002年)•J2SE 5.0(2004年)•Java SE 6(2006年)•Java SE 7(2011年)•Java SE 8(2014年)1.3 Java语言的应用领域Java语言的应用范围很广,它可以用于开发各种应用程序,如:•企业级应用软件•移动应用程序•互联网应用程序•游戏开发•操作系统1.4 Java语言的开发环境Java语言的标准开发环境包括以下几个部分:•JDK(Java Development Kit,Java开发工具包)•Eclipse、NetBeans等集成开发环境1.5 Java语言的运行环境Java程序在运行时需要Java虚拟机(JVM)的支持,JVM可以在各种操作系统上运行。
因此,Java程序的可移植性非常强。
同时,JVM还提供了一些优化,可以使Java程序运行得更快。
第二章 Java编程基础2.1 程序结构Java程序的基本结构包括以下几个部分:•包声明•导入语句•类声明2.2 变量和常量Java中的变量有以下几种类型:•整型•浮点型•字符型•布尔型Java中的常量有以下几种类型:•整型常量•浮点型常量•字符型常量•布尔型常量2.3 运算符Java中的运算符包括以下几种类型:•算术运算符•关系运算符•逻辑运算符•位运算符•赋值运算符2.4 流程控制语句Java中的流程控制语句有以下几种类型:•if语句•switch语句•for语句•while语句•do…while语句第三章 Java面向对象编程基础3.1 面向对象编程概述面向对象编程是一种编程范式,它通过封装、继承和多态,使程序结构更清晰、更易于维护。
学习java的心得体会

学习java的心得体会篇一:JAVA学习的心得体会国家队每一次踢球失败后都要说这么一句:我们回去后要好好总结,下次会打得更好!总结不代表就能改过原有的不足,也不代表就能进步了(一)充分利用MSDN因为我个人觉得它胜过任何一本编程参考书MSDN是 Microsoft 当前提供的有关编程信息的资,它包含微软最新的技术数据库,加上易学易用的全文检索功能,让您迅速找到任何您需要的技术参考数据(二)加强自我管理,善于作自我总结,分析^p 自已的优点及缺点中国境内百分之八十以上的领导人在百分之八十以上的场合的讲话中都有类似的观点,所以在这里我是不多说了,反正这一条用在什么行业什么地方都不会有错的,人生最大的敌人不是就是自已吗管好自已认清自已,那还有什么搞不定的(三)养成良好的文档习惯良好的文档是正规研发流程中非常重要的环节,一个好的程序是先写好文档再进行编程的,在设计文档的指导下,才能写出安全的代码。
如果你不写文档,一开始就写程序,这样你就不会按已设计好的路线走,而是想到哪写到哪。
小功能还好说,要是大功能,就容易混乱甚至失控.那么如何写文档呢其实我认为没有统一的标准,虽然国家及一些NB的人总结了很多的模板,但每个人的习惯不同,如果你不加以修改或创新,就套用某个标准,我相信写起来会很吃力及说不清的难受,因此我觉得只要能将你的设计思想及实现算法或步骤描述清楚就是好的文档,我强烈建议广大程序员朋友们在写文档时要善于用图表来说明你的思想,我们不是作家,也可能作文都经常性地不及格,写出五官端正的文章对我们来说可能不容易啊!好好地利用VISIO,ROSE或别的工具来表达你的思想吧!(五)代码风格要规范,严谨,效率要高。
(六)掌握好跟踪调试技巧.跟踪调试程序是一件繁琐而又复杂的事情,所以掌握必要的调试策略及技巧却可以使这些工作变得轻松起来.强烈建议你去看一下老美Everett N.McKay及Mike Wooding写的书Debugging Windows Programs,你一定受益匪浅.(七)养成自我测试的习惯测试工作应由测试工程师来做,但在你写完一个模块或一个软件时,还是要自已先测试一下,保证不要出现一些低级的错误.(八)善于交流善于沟通,特别是经常与一些高手交流一下学习的心得体会有人说,程序员的性格大多内向不喜欢说话,其实是有些误会了,不是不喜欢而是话不投机,我的脑袋一天到晚都在不停地转,函数,数据,算法啊充满了我的世界,我那还有时间与你谈一些无聊的话题,话要找对人了,才容易谈下去,书上说过听君一席话,胜读十年书,你要找的就是这种豁然开朗!(九)阶段性地做一下专题总结知识要温故而知新,因此我程序员要养成阶段性地做专题总结的习惯,比如你这个月学习或在做与多线程有关的模块或项目,那么在你做完后,你就可以好好地总结一下所有与多线程相关的技术,包括理论知识,实践方法以及各种技巧及优秀文章等等,这对你各种能力的提高将有很大的帮助,你试过了吗,如果没有,那就快点行动吧!(十)要有持之以恒的精神我只是想说明要学好任何一门技术,最好要有持之以恒精益求精的精神,特别是学一些比较抽象比较难的技术,除了思考一下你的学习方法以外,还必须坚定你的目标及信念!篇二:学习Java_的步骤和心得体会(杰瑞整理)学习java的步骤和心得体会很多同学都想要自己学习Java,但是应该如何学习,从何处着手却很迷茫.针对这些同学,烟台杰瑞教育资深Java讲师李老师说,学习Java最终的就是基础知识的学习和框架的掌握,基础知识掌握扎实以后,多多学习各种框架有助于自己少走很多弯路.最后,李老师结合杰瑞教育的Java学习课程为大家推荐了一篇网上的学习Java步骤, 大家一起来看一下吧: 第一步:首先要做好学习前的准备工作:java语言一般用于大型的服务器程序开发,所有有必要了解如下内容:Unix 开发环境Unix系统原理、Unix开发环境、Unix常用命令。
java学习笔记(5)控制语句、键盘输入

java学习笔记(5)控制语句、键盘输⼊控制语句:java控制可以分为7种:*控制选择结构语句: *if if else *switch*控制循环结构语句: *for *while *do while*改变控制语句顺序: *break *continueif控制语句:/*关于java语⾔当中的if语句,属于选择结构,if语句⼜被称为分⽀语句/条件控制语句;1、if语句的运发结构:包含4中编写⽅式第⼀种:if(布尔表达式){java语句;...};第⼆种:if(布尔表达式){java语句;...}else{java语句;...}第三种:if(布尔表达式){java语句;...}else if(布尔表达式){java语句;...}...第四种:if(布尔表达式){java语句;...}else if(布尔表达式){java语句;...}else{java语句;...}重点:只要有⼀个if分⽀执⾏,整个if语句结束;注意:所有控制语句都是可以互相嵌套的。
注意:嵌套使⽤的时候,代码格式要保证完美。
注意:if语句中,只有⼀条java语句的话,⼤括号可以省略;if(true/false){java语句;}if(true/false) java语句;//但是不推荐使⽤,这种代码风格不好。
不容易看清。
*/public class ifTest01{public static void main(String[] args){// 需求,所在位置的5公⾥范围内有肯德基的话,去KFC吃午饭。
// 公⾥数double distance = 6.0;//单位KM// 判断语句if(distance<=5){System.out.println("⾛着去KFC吃午饭");}else if(distance<=7.0&&distance>5){System.out.println("跑着去KFC吃午饭");}else{System.out.println("在附近吃别的");}}}接收⽤户键盘输⼊:/*System.out.println() 负责向控制台输出,【从内存到控制台,输出的过程,这是从内存中出来了】接收⽤户键盘输⼊,从"键盘"到"内存"。
第2章 Java基本语言

2.2.1 隐式数据类型转换
如果去银行进行货币的对话,只需要交上需要兑换的 货币,银行会自动根据基数来进行货币的兑换。隐式数据 类型转换也有些类似,它是自动由低优先级到高优先级的 数据进行转换赋值,不需要进行特别的说明。
2.2.2 显示类型转换
显示类型转换也就是在优先级高的类型向优先级低的 类型进行转换时,需要进行强制类型转换。强制数据类型 转换。
2.3.3 逻辑运算符及表达式
逻辑运算符的计算对象是布尔变量,,当需要同时对多个条 件进行判断时需要使用到逻辑与符号“&&”与逻辑或符号 “||”,在逻辑运算符中,共有六种逻辑运算符。 &:逻辑与,例如x&y,表示x和y都真则真。 |:逻辑或,例如x|y,表示x和y中有一个为真则真。 !:逻辑非,例如!x,表示x为真则假,x为假则真。 &&:逻辑与,例如x&&y,表示x和y都真则为真。 ||:逻辑或,例如x||y,表示x和y有其一为真则为真。 ^:异或,例如x^y,表示x和y都为真或者都为假时,为真。
算术运算符就是在小学中所学到的加减乘除运算。算 术运算符就是进行加、减、乘、除运算的符号,对应的运 算符是“+”、“-”、“*”、“/”。算术运算符是实现整型 数据类型和浮点数据类型之间的计算。
2.3.2 关系运算符及表达式
关系运算符适用于判断大小或者是判断真假,返回值 为布尔类型。例如判断相等的运算符是“==”,判断不等 的运算符是“!=”。关系运算符通常是和逻辑条件语句来 进行配合使用。关系运算的结果只有两种,即真(true) 和假(false),Java中的关系运算符有六种,分别如下 。 >:表示大于,例如X>Y则为真,否则为假。 <:表示小于,例如X<Y则为真,否则为假。 >=:大于等于,例如X>=Y则为真,否则为假。 <=:小于等于,例如X<=Y则为真,否则为假。 ==:等于,例如X==Y则为真,否则为假。 !=:不等于,例如X!=Y则为真,否则为假。
java新手代码大全
java新手代码大全Java新手代码大全。
Java是一种广泛使用的编程语言,对于新手来说,学习Java可能会遇到一些困难。
本文将为新手提供一些常见的Java代码示例,帮助他们更好地理解和掌握Java编程。
1. Hello World。
```java。
public class HelloWorld {。
public static void main(String[] args) {。
System.out.println("Hello, World!");}。
}。
```。
这是Java中最简单的程序,用于打印"Hello, World!"。
新手可以通过这个示例来了解一个基本的Java程序的结构和语法。
2. 变量和数据类型。
```java。
public class Variables {。
public static void main(String[] args) {。
int num1 = 10;double num2 = 5.5;String str = "Hello";System.out.println(num1);System.out.println(num2);System.out.println(str);}。
}。
```。
这个示例展示了Java中的基本数据类型和变量的声明和使用。
新手可以通过这个示例来学习如何定义和使用整型、浮点型和字符串类型的变量。
3. 条件语句。
```java。
public class ConditionalStatement {。
public static void main(String[] args) {。
int num = 10;if (num > 0) {。
System.out.println("Positive number");} else if (num < 0) {。
JAVA学习(一)——基本语法
JAVA学习(⼀)——基本语法 tips:前端开发写惯了弱类型语⾔,再来学强类型语⾔,真的是被各种修饰符、类型声明给整的云⾥雾⾥,⽽且java语法和javascript语⾔差别还是很⼤的,所以做好笔记,把⼀些需要注意的地⽅记下来是⾮常重要的,接下来就开始学习java啦。
⼀、基本语法: 1、⼤⼩写敏感:Java是⼤⼩写敏感的,这就意味着标识符Hello与hello是不同的。
2、类名:对于所有的类来说,类名的⾸字母应该⼤写。
如果类名由若⼲单词组成,那么每个单词的⾸字母应该⼤写,例如 MyFirstJavaClass 。
3、⽅法名:所有的⽅法名都应该以⼩写字母开头。
如果⽅法名含有若⼲单词,则后⾯的每个单词⾸字母⼤写。
4、源⽂件名:源⽂件名必须和类名相同。
当保存⽂件的时候,你应该使⽤类名作为⽂件名保存(切记Java是⼤⼩写敏感的),⽂件名的后缀为.java。
(如果⽂件名和类名不相同则会导致编译错误)。
5、主⽅法⼊⼝:所有的Java 程序由public static void main(String args[])⽅法开始执⾏。
备注⼀下: 5.1、public static void main(String args[]){}:为java主函数,java虚拟机会⾃动寻找到main⽅法,然后开始执⾏后⾯的程序,java程序的规定的格式写法; 5.2、public:可外部访问; 5.3、static:标记为静态函数,将该函数存储在静态存储区,不需要实例化(new)即可使⽤; 5.4、void:⽆返回值; 5.5、String args[]:可在命令⾏通过此参数给函数传值,可在其他类调⽤这个类的main函数时传值。
public class MyFirstJavaProgram {/* 第⼀个Java程序.* 它将打印字符串 Hello World*/public static void main(String []args) {System.out.println("Hello World"); // 打印 Hello World}} ⼆、类(class) 1、局部变量 2、成员变量:定义在类中,⽅法体之外的变量,和局部变量略有不同。
04747java语言程序设计一
04747java语言程序设计一Java语言程序设计一Java是一种广泛使用的高级编程语言,由Sun Microsystems公司(现属于Oracle公司)的James Gosling在1995年首次发布。
Java语言以其跨平台性、面向对象的特性、健壮性、安全性和多线程能力而闻名。
本课程将介绍Java语言的基础知识,包括语法、数据类型、控制结构、类与对象、异常处理以及输入输出等。
1. Java语言概述Java是一种静态类型、面向对象的编程语言,设计目标是实现“一次编写,到处运行”(Write Once, Run Anywhere,简称WORA)。
Java 程序可以在任何支持Java虚拟机(JVM)的平台上运行,这使得Java 成为了开发跨平台应用程序的理想选择。
2. Java开发环境搭建在开始编写Java程序之前,需要搭建Java开发环境。
首先需要下载并安装Java Development Kit(JDK),然后配置环境变量,确保可以在命令行中使用`javac`和`java`命令。
3. Java基本语法Java的基本语法包括变量声明、数据类型、运算符、控制语句等。
Java是一种强类型语言,所有变量在使用前必须声明其类型。
- 数据类型:Java提供了多种数据类型,包括整型(int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。
- 变量:变量是存储数据的容器,需要指定类型和名称。
- 运算符:包括算术运算符、关系运算符、逻辑运算符、位运算符等。
- 控制语句:包括条件语句(if, switch)、循环语句(for, while, do-while)。
4. 面向对象编程面向对象编程(OOP)是Java的核心特性之一。
OOP基于类和对象的概念,类是对象的蓝图,而对象是类的实例。
- 类:定义了一组具有相同属性和方法的对象的结构。
- 对象:类的实例,具有类定义的属性和方法。
java基础课件ppt下载
Git具有分支管理、强大的冲突解决功能、灵活的版本回退 等特点,能够大大提高团队协作和项目管理效率。
Git使用
Git的基本使用包括创建仓库、提交代码、合并分支等,还 有高级功能如分支策略制定、Gitflow工作流等。
01
Java实践项目
学生信息管理系统
总结词
功能全面、综合性强
详细描写
学生信息管理系统是一个典型的Java实践项目,涵盖了数 据库操作、界面设计、系统架构等多个方面。通过开发这 个项目,学生可以全面掌握Java的基础知识和技能,提高 实际操作能力。
总结词
贴近实际、应用广泛
详细描写
学生信息管理系统在实际生活中应用广泛,可用于学校、 培训机构等场景。这个项目能够让学生了解Java在实际开 发中的应用,提高解决实际问题的能力。
总结词
团队合作、锻炼沟通协作能力
详细描写
在开发学生信息管理系统的进程中,学生需要组成团队进 行协作。通过团队成员之间的沟通、协作,学生可以锻炼 团队合作和沟通能力,为未来的职业发展做好准备。
Eclipse特点
Eclipse具有丰富的插件支持、可扩大性、跨平台 性、强大的项目管理和调试工具等特点。
3
Eclipse使用
Eclipse的基本使用包括创建项目、编写代码、运 行程序等,还有高级功能如断点调试、版本控制 集成等。
Maven项目管理工具
Maven简介
Maven是一个项目管理工具,它 提供了项目构建、依赖管理等功 能,广泛应用于Java项目的开发
01
Java基础语法
数据类型与变量
数据类型
Java是一种静态类型语言,变量 在声明时必须指定数据类型。基 本数据类型包括整型、浮点型、 字符型和布尔型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录 第一篇 语言基础 1,常量定义: public static final int a=8; 不能定义在main函数里; 2,变量定义时要要相应的初始化,养成好习惯; 3.自动类型转换:级可以向高级char->int ->float -> double 强制类型转换:int i ; byte b = (byte) I; 注意:范围超出时,截取低位; Boolean 类型不能进行转换 不相关的类型不可以转换,String 和char ; 4.引用数据类型:除了八种基本数据类型以外,其他的都是引用数据类型(数组、字符串、类和接口) public class test2 extends test1 { public static void main(String args[]){ System.out.println("" instanceof String ); System.out.println(null instanceof String); } } instanceof 关键字 判断是否为目标类型; 5.算术运算系统进行的自动类型转换规则:按精度由低到高的转换; Byte -> short -> int -> long -> float -> double 6.移位运算符: << 左移 高位左移 右侧补零 : 左移就是乘以2 左移n位就是乘以2的n次方 >> 右移 右移后左侧补充符号位: 右移就是除以2 右移n位就是除以2的n次方 例如: public static void main(String args[]){ int a=9; int b=-8; System.out.println(a>>2); System.out.println(b<<2); } 运行结果: 2 -32 注意:对浮点型时不可以的; >>> 无符号右移运算符 : 右移后左补零 得到的数一定大于0 注意: (1)对于byte 、 short、char 型数据,系统会自动的转化为int后再移位 (2)对于int型整数a>>n 系统自动的移位n%32 (3)对于long型整数a>>n 系统自动的移位n%64 (4)整数不断的右移,最后结果为1,负数不断的右移运算,结果为-1; 7. 命名规则: 类名首字母大写; 变量名和方法名首字母小写,; 运用驼峰标示(后面每个单词首字母都大写); 例子: class BirthDay{ public int day=9; public int month=9; public int year=2000; BirthDay(){} BirthDay(int _day,int _month,int _year){ day = _day; month = _month; year= _year; } void display(){ System.out.println(day+"-"+month+"-"+year); } } public class Test { public static void main(String args[]){ Test t= new Test(); BirthDay d1= new BirthDay(9,9,1986); BirthDay d2= new BirthDay(); d2.display(); d1.display(); t.change1(d1,d2); d1.display(); t.change2(d1); d1.display(); } public void change1(BirthDay d1,BirthDay d){ d1=d; } public void change2(BirthDay d){ d.day=2; } } 在方法执行前,为方法的参数在栈内存分配空间,空间内容就是传进的实参内容; 方法执行完毕,为方法(局部变量)分配的栈内存空间立即消失,但是堆内存不会马上消失,垃圾回收器回收时消失; 8. 跳转语句: 例子: public class break_test { public static void main(String args[]){ boolean flag = true; firstBlock: { System.out.println("进入第一块"); secondBlock: { System.out.println("进入第二块"); thirdBlock: { System.out.println("进入第三块"); if(flag) break secondBlock; System.out.println("推出第三块"); } System.out.println("退出第二块"); } System.out.println("退出第一块"); } } } 运行结果: 进入第一块 进入第二块 进入第三块 退出第一块 分析:主要理解与C++的区别, 这样写是不行的:if(flag) break secondBlock; 第二篇 内存分析: 面向对象的基本概念——引用 1、Java语言中除了基本类型以外的变量类型都称为引用类型,java中的对象是通过引用其对象对其进行操作的。 2、每个对象都是占有两块内存的,对象名存放在栈内存,指向堆内存中分配给该对象的空间(动态的,不是绝对地址),堆内存的大小在执行时动态分配; 而基础类型(简单类型) (int double float byte等)只在栈内存占有一块空间; 3、如何在内存中区分类和对象: 类是静态的概念,存放在代码区; 对象是new出来的位于堆内存,类的每个变量(除了静态变量)在不同的对象中都有不同的值,而方法只有一份在执行时,才占有内存; 4.传值和传引用 明白了内存分配这个问题就很好解决了:函数(方法)参数在栈内存建立空间,名称为形参,内容为传入实参的值,然后进行相应的操作。 public class Ex_3_1 { public static void test1(StringBuffer str){ str.append(",world"); } public static void test2(String str){ str+=",World"; } public static void main(String args[]){ StringBuffer str1= new StringBuffer("Hello"); String str2 = "Hello"; test1(str1); System.out.println(str1); test2(str2); System.out.println(str2); } } 运行结果: Hello,world Hello 分析: 5.静态方法调用 package com; public class staticTest { public static int add(int x){ return x+1; } public static void main(String args[]){ int i=add(2); //静态方法直接调用 System.out.println(i); } }
6.返回数组对象 import java.util.Arrays; public class test2{ public static void main(String args[]){ SortArrays sa = new SortArrays(); int intArrays[] = {3,5,7,85,42,7,1,0}; intArrays = sa.sortArrays(intArrays); for(int i =0;iSystem.out.print(intArrays[i]+" "); } } } class SortArrays{ public int[] sortArrays(int []a ){ Arrays.sort(a); return a; } } 7.对象参数的传递 package com; public class ByValueTest { public static void changeName(CarTest cnCar){ cnCar.carName = "Porsche"; cnCar = null; } public static void main(String args[]){ CarTest c = new CarTest ("huang",""); c.carName = "BMW"; changeName(c); System.out.println(c.carName); } } 运行结果: huang,the type is Porsche 解析:changName()运行时,参数cncar和实参c指向同一个对象,方法执行完毕cncar的值被舍弃; 可知,java在传递对象时,实际上方法接受的是对象引用的副本,而不是这个对象, 原因是修改为ncar的内容并没有改变c的值; 8.数组作为参数传递: public class BulleSortTest { public void bulleSort(int array[]){ int tmp; for(int i=0;ifor(int j=i+1;jif(array[i]tmp=array[i]; array[i]=array[j]; array[j]=tmp; } } } for(int i=0;iSystem.out.print(array[i]+" "); } } public static void main(String args[]){ BulleSortTest bst = new BulleSortTest(); int array[] = {2,15,32,26,42,56,78,90,45,32,12,34};