Java入门基础代码
- 格式:doc
- 大小:52.50 KB
- 文档页数:11
java基础教程:Java基础疯狂代码 / ĵ:http://BlogDigest/Article75483.htmlJava简介 Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。
用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。
另一方面,Java技术也不断更新。
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。
Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
现在Java平台已经嵌入了几乎所有的操作系统。
这样Java程序可以只编译一次,就可以在各种系统中运行。
Java应用编程接口已经从1.1x版发展到1.2版。
目前常用的Java平台基于Java1.4,最近版本为Java1.7。
Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。
2009年04月20日,oracle(甲骨文)宣布收购sun。
1991年,Sun公司的James Gosling。
Bill Joe等人,为电视、控制考面包机等家用电器的交互操作开发了一个Oak(一种橡树的名字)软件,他是Java的前身。
Java基础编码规范1. 语法基础标识符、关键字、保留字标识符:由程序员指定的变量、⽅法、类、接⼝等的别名.。
标识符规范:区分⼤⼩写;⾸字母可以是下划线、字母、美元。
但不能是数字;出⾸字符以外的其它字符,可以是下划线、字母、美元和数字;关键字不能作为标识符.关键字:语⾔已经定义好的类似于标识符的保留字符序列,不能挪作他⽤,关键字⼀律⼩写表⽰。
保留字:在语⾔中既不能当作标识符使⽤,也不是关键字,也不能在程序中使⽤的字符序列,Java语⾔的保留字只有const,goto,其中const可以使⽤public static final 来代替。
Java分隔符:分号:表⽰⼀条语句的结束。
⼤括号:表⽰⼀个语句块,即语句的⼀个集合,在定义类和⽅法是,语句块也被⽤作分隔类体或⽅法体。
空格:适当的使⽤空格可以改善代码的可读性。
变量:变量所代表的内容是可以修改的。
常量:变量的内容是不可以的被修改的,常量⼀旦被初始化就不能被修改。
事实上常量:有三种类型:静态常量,成员常量和局部常量。
变量作⽤域:作⽤域规定了变量的适⽤范围,超过了变量作⽤域,变量内容就会被释放,根据变量作⽤域的不同可以分为全局变量和局部变量。
2. 编码规范除了包和常量以外,java编码规范均使⽤驼峰命名法。
包名⼀律全部⽤⼩写,作为命名空间,包名必须具有唯⼀性。
⽅法名、变量名使⽤⼩驼峰命名法,如balanceAccount。
类和接⼝名、⽂件名使⽤⼤驼峰命名法,如CatDao。
常量,全部使⽤⼤写,多个单词构成可以使⽤下划线间隔开。
3. 注释规范⽂件注释:即在每⼀个⽂件的开头进⾏注释,⽂件注释通常包括版权信息、⽂件信息、历史版本信息和⽂件内容等等。
⽂档注释:⽂档注释就是可以⽣成API帮助⽂档的注释,⽂档注释主要针对类(或者接⼝)、实例变量、静态变量、实例⽅法、静态⽅法等进⾏注释,主要提供给不看源码的⼈做参考⽤代码注释:给阅读源码的⼈以参考的代码注释地标注释:在源代码中添加⼀些表⽰,以便于IDE⼯具快速定位代码。
Java基础之代码死循环详解⽬录⼀、前⾔⼆、死循环的危害三、哪些场景会产⽣死循环?3.1 ⼀般循环遍历3.1.1 条件恒等3.1.2 不正确的continue3.1.3 flag线程间不可见3.2 Iterator遍历3.3 类中使⽤⾃⼰的对象3.4 ⽆限递归3.5 hashmap3.5.1 jdk1.7的HashMap3.5.2 jdk1.8的HashMap3.5.3 ConcurrentHashMap3.6 动态代理3.7 我们⾃⼰写的死循环3.7.1 定时任务3.7.2 ⽣产者消费者四、⾃⼰写的死循环要注意什么?⼀、前⾔代码死循环这个话题,个⼈觉得还是挺有趣的。
因为只要是开发⼈员,必定会踩过这个坑。
如果真的没踩过,只能说明你代码写少了,或者是真正的⼤神。
尽管很多时候,我们在极⼒避免这类问题的发⽣,但很多时候,死循环却悄咪咪的来了,坑你于⽆形之中。
我敢保证,如果你读完这篇⽂章,⼀定会对代码死循环有⼀些新的认识,学到⼀些⾮常实⽤的经验,少⾛⼀些弯路。
⼆、死循环的危害我们先来⼀起了解⼀下,代码死循环到底有哪些危害?程序进⼊假死状态,当某个请求导致的死循环,该请求将会在很⼤的⼀段时间内,都⽆法获取接⼝的返回,程序好像进⼊假死状态⼀样。
cpu使⽤率飙升,代码出现死循环后,由于没有休眠,⼀直不断抢占cpu资源,导致cpu长时间处于繁忙状态,必定会使cpu使⽤率飙升。
内存使⽤率飙升,如果代码出现死循环时,循环体内有⼤量创建对象的逻辑,垃圾回收器⽆法及时回收,会导致内存使⽤率飙升。
同时,如果垃圾回收器频繁回收对象,也会造成cpu使⽤率飙升。
StackOverflowError,在⼀些递归调⽤的场景,如果出现死循环,多次循环后,最终会报StackOverflowError栈溢出,程序直接挂掉。
三、哪些场景会产⽣死循环?3.1 ⼀般循环遍历这⾥说的⼀般循环遍历主要是指:for语句foreach语句while语句这三种循环语句可能是我们平常使⽤最多的循环语句了,但是如果没有⽤好,也是最容易出现死循环的问题的地⽅。
EclipseJava编程入门教程Eclipse Java编程入门教程第一章:介绍Eclipse和Java编程Eclipse是一个广泛使用的集成开发环境(IDE),用于开发各种应用程序,尤其是Java应用程序。
Java是一种面向对象的编程语言,广泛应用于企业级应用开发和移动应用开发。
本章将介绍Eclipse的基本概念和Java编程的基础知识。
1.1 Eclipse的安装和配置要使用Eclipse进行Java编程,首先需要在官方网站上下载并安装Eclipse IDE。
安装完成后,打开Eclipse,配置Java开发环境。
这包括设置JDK路径、创建工作空间和配置Eclipse的界面。
1.2 创建Java项目在Eclipse中,可以通过“New Project”选项创建一个Java项目。
选择项目类型和命名,在项目目录下创建源文件夹和包。
这样就能开始编写Java代码了。
第二章:Eclipse编程基础了解了Eclipse的基本使用方法后,本章将重点介绍Java编程的基础知识,包括变量、数据类型、运算符、流程控制和函数等。
2.1 变量和数据类型Java是一种强类型语言,每个变量都必须先声明,然后才能使用。
变量可以存储不同类型的数据,例如整数、浮点数、字符和布尔值等。
本节将介绍Java的各种数据类型,以及如何声明和使用变量。
2.2 运算符和表达式Java提供了多种运算符,包括算术运算符、赋值运算符、比较运算符和逻辑运算符等。
通过运算符和表达式,可以进行各种数学计算和逻辑判断。
本节将详细介绍Java的运算符和表达式的使用方法。
2.3 流程控制流程控制是编程中的重要概念,用于控制程序的执行流程。
Java提供了多种流程控制语句,包括条件语句(if-else语句、switch语句)、循环语句(for循环、while循环)和跳转语句(break语句、continue语句)。
本节将介绍这些流程控制语句的使用方法。
2.4 函数和方法函数是一段封装了特定功能的代码块,可以重复使用。
java基础选择加减乘除运算代码import java.util.Scanner;public class BasicCalculator {public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入第一个数:");int num1 = input.nextInt();System.out.println("请输入第二个数:");int num2 = input.nextInt();System.out.println("请选择运算方式:"); System.out.println("1.加法");System.out.println("2.减法");System.out.println("3.乘法");System.out.println("4.除法");int choice = input.nextInt();switch (choice) {case 1:System.out.println("两数的和为:" + (num1 + num2)); break;case 2:System.out.println("两数的差为:" + (num1 - num2)); break;case 3:System.out.println("两数的积为:" + (num1 * num2)); break;case 4:if (num2 != 0) {System.out.println("两数的商为:" + (num1 / num2));} else {System.out.println("除数不能为0");}break;default:System.out.println("输入无效!");}}}这是一个基础的加减乘除运算器的Java程序。
Monkey_peach代码package com.sailor.game;/*** 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩* 下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。
* 程序分析:采取逆向思维的方法,从后往前推断。
** @author Sailor**/public class Monkey_Peach {public static void main(String[] args) {int[] peach = new int[10];peach[9] = 1;// 下面利用的是数组和循环将每天的桃子数量都求出来了for (int i = peach.length - 1; i > 0; i--) {peach[i - 1] = 2 * (peach[i] + 1);}for (int i = 0; i < peach.length; i++) {System.out.println(peach[i]);}System.out.println("第一天的桃子数:"+getPeach_Num(10, 1));}// 利用递归的方法来求第一天的桃子数,输入参数为天数和当天的桃子数,输出为第一天桃子数public static int getPeach_Num(int day, int peach_num) {if (day == 1)return peach_num;else if (day < 1 || peach_num < 0)return 0;elsereturn getPeach_Num(day - 1, (peach_num + 1) * 2);}}package com.sailor.game;/*** 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩* 下的桃子吃掉一半,又多吃了一个。
java基础代码实例求1-100之间的奇数和偶数/*4.4 任务4:输出1-100之间的偶数(时间:20分钟)4.4.1 任务描述(1) 写⼀个程序,由⽤户输出1-100之间的偶数。
4.4.2任务⽬的(1) 学习使⽤Java的循环语句。
4.4.3任务要求(1) 使⽤循环4.4.4 难点提⽰⽆4.5 任务5:输出1-100之间的奇数和(时间:20分钟)4.5.1 任务描述(2) 写⼀个程序,由⽤户输出1-100之间的奇数和。
4.5.2 任务⽬的(2) 学习使⽤Java的循环语句。
4.5.3任务要求(2) 使⽤循环*/public class demo{public static void main(String[] args) {even();// 偶数System.out.println("----------------The dividing line!------------");odd();// 奇数}private static void odd() {for (int i = 1; i <= 100; i++) {if (i % 2 != 0) {// 除以⼆取余数,余数为0则为偶数,否则奇数System.out.println(i);}}}private static void even() {for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {// 除以⼆取余数,余数为0则为偶数System.out.println(i);}}}}。
java基础代码Java是一门开源、面向对象、跨平台的编程语言,拥有广泛的应用场景。
Java基础代码的学习是Java编程的基石,本文将分步骤阐述。
第一步,Hello World程序。
Hello World是Java编程入门的第一步,也是最简单的一个程序。
下面是代码:```public class HelloWorld {public static void main(String[] args) {System.out.println("Hello World!");}}```代码的第一行表示声明了一个公共类HelloWorld。
在Java中每个应用程序都有至少一个类。
类被定义为一组代码,用于描述具有相似属性和行为的对象的结构。
public修饰符表示这个类是公共的,它可以被其他任何类访问。
第二行定义了一个main方法。
在Java中,main方法是所有应用程序的入口点。
也就是说,当你运行一个Java程序时,JVM会调用这个方法来启动这个程序。
第三行代码调用了System.out.println()方法,将Hello World!这个字符串打印到控制台上。
第二步,变量与数据类型。
在Java中,变量用于存储程序运行时需要的数据。
Java中有8种基本数据类型:byte、short、int、long、float、double、char和boolean,每个数据类型在内存中使用的空间大小不同。
下面是一个例子:```public class Variables {public static void main(String[] args) {int age = 25;double salary = 40000.50;boolean isMarried = false;char gender = 'M';String name = "Tom";System.out.println("Name: " + name);System.out.println("Age: " + age);System.out.println("Gender: " + gender);System.out.println("Salary: " + salary);System.out.println("Married: " + isMarried);}}```上面的代码中,我们定义了5个变量:年龄(age)、薪水(salary)、婚姻状况(isMarried)、性别(gender)和姓名(name)。
BlueJJava编程入门指南章节一:BlueJ简介BlueJ是一款基于Java平台的集成开发环境(IDE),特别适用于初学者学习Java编程。
它提供了直观的界面、简洁的操作和强大的调试功能,帮助学习者快速上手Java编程。
本章将介绍BlueJ的基本特点以及使用方法。
章节二:BlueJ安装与配置在本节中,将详细介绍如何下载、安装和配置BlueJ。
首先需要访问官方网站,下载适合自己操作系统的安装包。
然后按照安装向导进行安装。
在配置部分,将介绍如何设置JDK的路径、设置默认编译器等基本操作,以确保BlueJ正常运行。
章节三:项目管理BlueJ作为一个面向对象的编程环境,支持以项目为单位组织源代码。
本节将介绍如何创建和管理项目,包括项目的新建、打开、保存、导入和导出。
此外,还会介绍如何管理项目中的类和对象,实现代码的组织与重复利用。
章节四:编辑与编译本节将详细介绍BlueJ中的编辑器功能和编译器操作。
通过BlueJ的编辑器,可以方便地编写Java程序代码,并通过编译器进行编译。
还会介绍如何调用Java API,以及如何优化代码编写,提高代码的可读性和可维护性。
章节五:调试与测试BlueJ提供了强大而丰富的调试工具,能够帮助开发者快速定位问题、分析变量和监控程序执行过程。
本节将介绍如何使用BlueJ进行调试,包括断点设置、单步执行、变量查看等操作。
此外,还会介绍如何进行程序的单元测试和集成测试。
章节六:面向对象编程基础面向对象编程是Java编程的重要基础。
本节将介绍面向对象编程的基本概念和原则,包括类与对象、封装、继承、多态等。
通过BlueJ的实践,学习者将深入理解面向对象编程思想,掌握如何在Java中实现面向对象的设计和开发。
章节七:常用控制流程与数据结构在本节中,将介绍Java中常用的控制流程语句,包括条件语句、循环语句和选择语句。
此外,还会讲解Java支持的数据结构,如数组、列表、集合等。
通过BlueJ的案例演示和练习,学习者将掌握控制流程的应用和数据结构的使用。
Java编程初级学习技巧Java是一种高级编程语言,常用于开发Web应用程序、桌面应用程序、移动应用程序和嵌入式系统。
对于新手而言,学习Java可以开启自己的编程之旅。
但是,在学习Java过程中,有许多技巧可以帮助新手更快、更好地理解Java编程。
以下是一些Java编程初级学习技巧,希望能对初学者有所帮助。
一、入门必备知识Java编程需要掌握的基础知识包括编程基础、面向对象编程、数据结构和算法以及一些基础的工具和框架等。
为了更加深入地理解Java 编程,以下是一些必备的知识点:1.基本编程概念:了解计算机编程的基本概念,如程序、数据类型、变量、运算符和表达式、循环语句、流程控制语句等。
2.面向对象编程:Java是一种面向对象的编程语言,需要掌握面向对象编程的基本概念,如类、对象、继承、多态性、抽象类和接口等。
3.数据结构和算法:对于Java开发人员,了解数据结构和算法是非常重要的,这有助于他们优化应用程序的性能,降低应用程序的复杂度和维护成本。
4.基础工具和框架:掌握一些基础的Java工具和框架,如Eclipse、NetBeans、Maven、Spring等。
二、学习Java语言优劣学习Java编程语言时,需要了解Java语言的优缺点,从而更好地选择适合自己的编程语言。
以下是Java语言的优缺点:1.优点(1)易于学习:Java是一种简单易学的编程语言,语法非常清晰,容易理解。
(2)兼容性好:Java的跨平台特性使得Java应用程序能够在不同的操作系统上运行,具有很好的兼容性。
(3)安全性高:由于Java是一种解释性编程语言,它可以执行“沙箱”机制,并在运行时自动检查类型的安全性。
(4)支持多线程编程:Java支持多线程编程,在编写程序时可以减少代码的复杂性,提高应用程序的性能。
2.缺点(1)运行速度较慢:由于Java是一种解释性编程语言,所以其运行速度比较慢。
(2)内存占用较大:Java应用程序的内存占用比较大,这可能会对计算机的性能产生影响。
Java基础选择加减乘除运算代码1. 概述Java作为一种广泛应用的编程语言,具有跨评台、面向对象等优点,被广泛用于软件开发、手机应用开发等方面。
在Java编程中,加减乘除运算是最基础的运算之一,本文将介绍Java中实现加减乘除运算的基础代码。
2. 加法运算代码在Java中,实现两个数的加法运算非常简单。
只需使用"+"符号即可进行加法运算。
以下是一个简单的例子:```javapublic class Addition {public static void m本人n(String[] args) {int a = 10;int b = 20;int sum = a + b;System.out.println("两数之和为:" + sum);}}```在上面的代码中,首先定义了两个整数变量a和b,然后使用加法运算符"+"计算它们的和,并将结果打印出来。
3. 减法运算代码和加法类似,Java中实现减法运算也非常简单。
只需使用"-"符号即可进行减法运算。
以下是一个简单的例子:```javapublic class Subtraction {public static void m本人n(String[] args) {int a = 20;int b = 10;int difference = a - b;System.out.println("两数之差为:" + difference);}}```在上面的代码中,首先定义了两个整数变量a和b,然后使用减法运算符"-"计算它们的差,并将结果打印出来。
4. 乘法运算代码和加法、减法类似,Java中实现乘法运算也非常简单。
只需使用"*"符号即可进行乘法运算。
以下是一个简单的例子:```javapublic class Multiplication {public static void m本人n(String[] args) {int a = 5;int b = 8;int product = a * b;System.out.println("两数之积为:" + product);}}```在上面的代码中,首先定义了两个整数变量a和b,然后使用乘法运算符"*"计算它们的积,并将结果打印出来。
第2章 Java语言开发环境 6 2.1 JDK 62.1.1 JDK的简介62.1.2 JDK的构成62.1.3 JDK的使用62.2 IDE 82.2.1 IDE简介82.2.2 JBuilder 92.2.3 Eclipse 92.2.4 相关资源92.3 Project管理92.3.1 Project的含义92.3.2 可行的Project组织模式 9102.4 本章小结 10习题10第1章 Java语言概述与面向对象思想1.1 Java语言的开展1.1.1 Java语言的产生上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以防止C++的一些缺乏。
该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树〔Oak〕。
后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。
随着Internet的迅速开展,Web应用日益广泛,Java语言也得到了迅速开展。
1994年,Gosling用Java开发了一个实时性较高、可靠、平安、有交互功能的新型Web浏览器,它不依赖于任何硬件平台和软件平台。
这种浏览器名称为HotJava,并于1995年同Java语言一起,正式在业界对外发表,引起了巨大的轰动,Java的地位随之而得到肯定。
此后的开展非常迅速。
Java编程语言的句法与C++的句法相似,语义那么与Small Talk TM的语义相似。
Java编程语言可被用来创立任何常规编程语言所能创立的应用程序。
设计Java编程语言的主要目标是:提供一种易于编程的语言,从而消除其它语言在诸如指针运算和存储器管理方面影响健壮性的缺陷。
利用面向对象的概念使程序真正地成为完全面向对象的程序。
为获得如下两点益处提供一种解释环境:提高开发速度──消除编译─链接—装载—测试周期;代码可移植性──使操作系统能为运行环境做系统级调用。
快速入门使用Eclipse进行Java开发第一章:Eclipse简介及安装Eclipse是一种基于Java的集成开发环境(IDE),它被广泛用于Java开发项目。
Eclipse具有高度可扩展性和灵活性,可以通过插件和扩展进行功能扩展,同时也支持其他编程语言的开发。
要开始使用Eclipse进行Java开发,首先需要下载并安装Eclipse。
在Eclipse官方网站上,可以找到适用于不同操作系统的安装程序包。
安装过程相对简单:下载适合操作系统的安装程序包,双击运行程序包,按照提示完成安装即可。
第二章:创建Java项目安装完成后,可以打开Eclipse并通过以下步骤创建一个新的Java项目:1. 打开Eclipse,选择“File”菜单,然后选择“New”和“Java Project”。
2. 输入项目的名称,并选择一个默认的工作空间(如果没有特殊需求,可以使用默认的工作空间)。
3. 点击“Finish”按钮,完成项目的创建。
第三章:创建Java类在Java项目下创建Java类是进行Java开发的基本操作。
通过以下步骤可以创建一个新的Java类:1. 在项目资源管理器中,右击项目名称,选择“New”和“Class”。
2. 输入类的名称(请使用合适的命名规范)。
3. 选择“public static void main(String[] args)”选项,这样可以为新类创建一个主执行方法。
4. 点击“Finish”按钮,完成新类的创建。
第四章:为Java类编写代码创建了Java类后,可以为该类编写代码。
在Eclipse中,可以在Java类的编辑器中输入和编辑代码。
Eclipse提供了语法高亮、代码补全、代码提示等功能,让编写代码更加方便。
在Java类编辑器中输入代码时,可以使用Eclipse的自动补全功能。
例如,当输入一个类的名称时,Eclipse会自动弹出可能的选项供选择。
第五章:调试Java程序Eclipse还提供了强大的调试功能。
java 入门学习大全来源:QQ群418355531获取更多资料可加群[java 入门培训-java 入门试学7天] 第1章 Java语言概述与面向对象思想 11.1 Java语言的发展 11.1.1 Java语言的产生11.1.2 Java语言的发展11.2 Java语言的特点 21.3 面向对象与面向过程的差异 31.3.1 面向过程思想回顾 41.3.2 面向对象思想介绍 41.4 面向对象程序设计中的主要概念和特征 41.4.1 主要概念 51.4.2 主要特征 5*1.5 Java与C++的差异 51.6本章小结 5习题 5第2章 Java语言开发环境 62.1 JDK 62.1.1 JDK的简介62.1.2 JDK的构成62.1.3 JDK的使用62.2 IDE 82.2.1 IDE简介82.2.2 JBuilder 92.2.3 Eclipse 92.2.4 相关资源92.3 Project管理92.3.1 Project的含义92.3.2 可行的Project组织模式 92.3.3 主要开发工具的Project目录102.4 本章小结 10习题10第1章 Java语言概述与面向对象思想1.1 Java语言的发展1.1.1 Java语言的产生上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。
该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。
后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。
随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。
1994年,Gosling用Java开发了一个实时性较高、可靠、安全、有交互功能的新型Web浏览器,它不依赖于任何硬件平台和软件平台。
这种浏览器名称为HotJava,并于1995年同Java语言一起,正式在业界对外发表,引起了巨大的轰动,Java的地位随之而得到肯定。
《Java语言程序设计基础教程》上机实验指导手册实验一 Java环境演练【目的】①安装并配置Java运行开发环境;②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;③学习同时编译多个Java源文件。
【内容】1.一个简单的应用程序✧实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令行窗口输出"We are students"}}✧实验后的练习:1.编译器怎样提示丢失大括号的错误?2.编译器怎样提示语句丢失分号的错误?3.编译器怎样提示将System写成system这一错误?4.编译器怎样提示将String写成string这一错误?3.联合编译✧实验要求:编写4个源文件:Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。
将4个源文件保存到同一目录中,例如:C:\100,然后编译Hello.java。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:模板1:Hello.javapublic class MainClass{public static void main (String args[ ]){【代码1】 //命令行窗口输出"你好,只需编译我"A a=new A();a.fA();B b=new B();b.fB();}}模板2 :A.javapublic class A{void fA(){【代码2】 //命令行窗口输出"I am A"}}模板3 :B.javapublic class B{void fB(){【代码3】 //命令行窗口输出"I am B"}}模板4 :C.javapublic class C{void fC(){【代码4】 //命令行窗口输出"I am C"}}5.将Hello.java编译通过后,不断修改A.java源文件中的代码,比如,在命令行窗口输出“我是A类”或“我被修改了”。
例1-1 DoubleVariableDemo.javaclass DoubleVariableDemo{public static void main(String args[]){double dRadius=2.0d;double dArea=Math.PI*dRadius*dRadius;System.out.println("半径为2的圆的面积:"+dArea);}}例1-2 BooleanConstantDemo.javaclass BooleanConstantDemo{public static void main(String args[]){final boolean BFLAG=true;if(BFLAG)System.out.println("Always Print Out Me!");elseSystem.out.println("Never Print Out Me!");}}例1-3 DecisionDemo.javaclass DecisionDemo{public static void main(String args[]){short x=1,y=2,z;// 错误代码// z = x + y;// 正确代码z=(short)(x+y);System.out.println(z);}}例1-4 IntegerConstantDemo . javaclass IntegerConstantDemo{public static void main(String args[]){final byte nMaxValue_1=100;final short nMaxValue_2=200;final int nMaxValue_3=300;final long nMaxValue_4=400;System.out.println("整数常量的nMaxValue_1值"+nMaxValue_1);System.out.println("整数常量的nMaxValue_2值"+nMaxValue_2);System.out.println("整数常量的nMaxValue_3值"+nMaxValue_3);System.out.println("整数常量的nMaxValue_4值"+nMaxValue_4);// nMaxValue_1 = nMaxValue_1 + 1; 不能更改常量的值}}例1-5 DataConversionDemo.javaclass DataConversionDemo{public static void main(String args[]){int nOp1=2;float fOp2=2.25f;float fResult=nOp1*fOp2;System.out.println("混合运算结果:"+fResult);}}例1-6 BasicMath.javaclass BasicMath{public static void main(String args[]){System.out.println("Integer Arithmetic");int a=1+1;int b=a*3;int c=b/4;int d=c-a;System.out.println("c = "+c);System.out.println("d = "+d);System.out.println("\nFloating Point Arithmetic");double da=1+1;double db=da*3;double dc=db/4;double dd=dc-a;System.out.println("dc = "+dc);System.out.println("dd = "+dd);int x = 42;double y = 42.25;System.out.println("x mod 10 = " + x % 10);System.out.println("y mod 10 = " + y % 10);}}例1-7 BooleanOperatorDemo.javaclass BooleanOperatorDemo{public static void main(String args[]){int nOperator1=5;int nOperator2=10;if((nOperator1>4)&&(nOperator2>9))System.out.println("nOperator1大于4并且nOperator2大于9");elseSystem.out.println("逻辑关系判断不成立");}}例1-8 BoolLogic.javaclass BoolLogic{public static void main(String args[]){boolean a=true;boolean b=false;boolean c=a|b;boolean d=a&b;boolean e=a^b;boolean f=(!a&b)|(a&!b);System.out.println(" a|b = "+c);System.out.println(" a&b = "+d);System.out.println(" a^b = "+e);System.out.println("!a&b|a&!b = "+f);}}例1-9 MultByTwo.javaclass MultByTwo{public static void main(String args[]){int i;int num=0xFFFFFFE;for(i=0;i<4;i++){num=num<<1;System.out.println(num);}}}例1-10 IfElseStudy.javapublic class IfElseStudy{public static void main(String args[]){int age=65;String sex;sex=new String("男");if(age>60){System.out.println("他是老年人");}else{System.out.println("他不是老年人");}if(sex.equals("男")){System.out.println("他的性别是男");}else{System.out.println("她的性别是女");}System.out.println("我在学习控制语句");}}例1-11 SwitchDemo.javaclass SwitchDemo{public static void main(String args[]){int x=(int)(Math.random()*10);System.out.println("随机数x放大10倍后的整数值:"+x);switch(x){case 0:System.out.println("case 0:"+x);break;case 1:System.out.println("case 1:"+x);break;default:System.out.println("default:"+x);break;}}}例1-12 Menu.javaclass Menu{public static void main(String args[]) throws java.io.IOException{ char choice;do{System.out.println("Help on:");System.out.println(" 1. if");System.out.println(" 2. switch");System.out.println(" 3. while");System.out.println(" 4. do-while");System.out.println(" 5. for\n");System.out.println("Choose one:");choice=(char)System.in.read();}while(choice<'1'||choice>'5');System.out.println("\n");switch(choice){case '1':System.out.println("The if:\n");System.out.println("if(condition) statement;");System.out.println("else statement;");break;case '2':System.out.println("The switch:\n");System.out.println("switch(expression) {");System.out.println(" case constant:");System.out.println(" statement sequence");System.out.println(" break;");System.out.println(" // ...");System.out.println("}");break;case '3':System.out.println("The while:\n");System.out.println("while(condition) statement;");break;case '4':System.out.println("The do-while:\n");System.out.println("do {");System.out.println(" statement;");System.out.println("} while (condition);");break;case '5':System.out.println("The for:\n");System.out.print("for(init; condition; iteration)");System.out.println(" statement;");break;}}}例1-13 ForDemo.javaclass ForDemo{public static void main(String args[]){int nSum,nCounter;for(nCounter=0,nSum=0;nCounter<=100;nCounter++){ nSum=nSum+nCounter;}System.out.println("100以内自然数的和为:"+nSum);}}例1-14 BreakDemo.javaclass BreakDemo{public static void main(String args[]){int nSum=0;int nCounter=0;while(nCounter<=100){if(nSum>2000)break;else{nCounter++;nSum=nSum+nCounter;System.out.println("累加结果:"+nSum);}}}}例1-15 Break.javaclass Break{public static void main(String args[]){boolean t=true;first:{second:{third:{System.out.println("Before the break.");if(t)break second;System.out.println("This won't execute");}System.out.println("This won't execute");}System.out.println("This is after second block.");}}}例1-16 ContinueLabel.javaclass ContinueLabel{public static void main(String args[]){outer:for(int i=0;i<10;i++){for(int j=0;j<10;j++){if(j>i){System.out.println();continue outer;}System.out.print(" "+(i*j));}}System.out.println();}}例1-17 UseMethod.javaclass B{int i,j;B(int a,int b){i=a;j=b;}B(int a){i=a;j=a;}void show(String a){System.out.println(a);}int show(int c){System.out.println(c);}}class UseMethod{public static void main(String args[]){B subOb=new B(1,2);B subOc=new B(1);subOb.show("hello");subOc.show(12);}}例1-18 ExtendsDemo.javaclass Parent{public int x;public int doSomething(){return x*x;}public int doOtherthing(){return x;}}class Child extends Parent{int x;Child(int x){this.x=x;}public int doSomething(){return x=x*x*x;}}public class ExtendsDemo{public static void main(String args[]){ int nResult;Parent parent=new Parent();parent.x=2;Child child=new Child(3);nResult=parent.doSomething();System.out.println("调用父类中的被覆盖方法:"+nResult);nResult=child.doSomething();System.out.println("调用子类中的覆盖方法:"+nResult);nResult=parent.doOtherthing();System.out.println("调用父类中没有被覆盖的方法:"+nResult);}}例1-19 UseSuper.javaclass A{int i;}class B extends A{int i;B(int a,int b){super.i=a;i=b;}void show(){System.out.println("i in superclass: "+super.i);System.out.println("i in subclass: "+i);}}class C extends B{int j;C(int a,int b,int c){super(a,b);j=c;}void show(){System.out.println(j);}}class UseSuper{public static void main(String args[]){B subOb=new B(1,2);C subOc=new C(1,3,4);subOb=subOc;System.out.println(subOb.i);// System.out.println(subOb.j); 错误代码subOb.show();}}例1-20 Package.javapackage mypackage;public class Package{int a=1;private int b=2;protected int c=3;public int d=4;public Package(){System.out.println("base constructor");System.out.println("n = "+a);System.out.println("n_pri = "+b);System.out.println("n_pro = "+c);System.out.println("n_pub = "+d);}}例1-21 InterfaceExample.javainterface Charge{public void charge();}class Bus implements Charge{public void charge(){System.out.println("公共汽车:一元二角/张,不计算公里数");}}class Cinema implements Charge{public void charge(){System.out.println("电影院:门票,二十元/张");}}class InterfaceExample{public static void main(String args[]){ Bus 二路汽车=new Bus ();Cinema 环艺=new Cinema ();二路汽车.收取费用();环艺.收取费用();}}。