Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。Java语言是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由当时任职太阳微系统的詹姆斯·高斯林(James Gosling)等人于1990年代初开发,它最初被命名为Oak。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
1995年5月23日,Java语言诞生
1996年1月,第一个JDK-JDK1.0诞生
1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术
1996年9月,约8.3万个网页应用了JAVA技术来制作
1997年2月18日,JDK1.1发布
1997年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录
1997年9月,JavaDeveloperConnection社区成员超过十万
1998年2月,JDK1.1被下载超过2,000,000次
1998年12月8日,JAVA2企业平台J2EE发布
1999年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)
2000年5月8日,JDK1.3发布
2000年5月29日,JDK1.4发布
2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机
2001年9月24日,J2EE1.3发布
2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升
2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0
2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
2006年12月,SUN公司发布JRE6.0
2009年4月20日,由甲骨文公司并购,前途一片黑暗
2009年12月,SUN公司发布Java EE 6
2010年11月,由于Oracle公司对于Java社区的不友善,因此Apache扬言将退出JCP[7]
2011年7月28日,Oracle公司发布Java SE 7
2014年3月18日,Oracle公司发表Java SE 8
1、面向对象(Object-Oriented)
2、分布性
3、简单性
4、鲁棒性
5、可移植性(跨平台)(Write Once Run Anywhere)
6、体系结构中立
7、安全性
8、解释执行
9、动态性
10、多线程
11、高性能
- 先编译再解释执行
说明:通过JDK提供的Java编译器(javac)将Java源代码(.java文件)编译成类文件(.class文件,也叫做字节码,这是一种人和计算机都无法识别的中间代码,),再通过Java解释器(java)启动JVM加载类文件解释执行。
Java的术语
开发工具和开发环境
Java程序的结构
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
说明:由于Java是面向对象的编程语言,Java程序通常是由类构成的,定义类的关键字是class,后面跟上类的名字,左花括号表示类的开始,右花括号表示类的结束。main方法是可执行程序的入口,它有三个修饰符,分别是:public、static和void,方法的开始和结束仍然是用花括号来界定的。方法中的代码是语句,分号表示语句的结束。上面的程序使用了Java API中的System类的out对象的println方法在控制台进行输出。
练习1:输出下面的图案。
******************
* *
* 欢迎来到狼窝 *
* *
******************
package com.lovoinfo;
public class Hello {
public static void main(String[] args) {
System.out.println("*************************");
System.out.println("*\t\t\t*");
System.out.println("*\t欢迎来到朗沃\t*");
System.out.println("*\t\t\t*");
System.out.println("*************************");
}
}
练习2:在弹出式对话框上输出上面的图案。
package com.lovoinfo;
import javax.swing.JOptionPane;
public class HelloGUI {
public static void main(String[] args) {
String name = JOptionPane.showInputDialog("请输入你的名字: ");
String message = "****************************\n"
+ "\n* 欢迎" + name + "来到狼窝 *\n"
+ "\n****************************";
JOptionPane.showMessageDialog(null, message);
}
}
练习3:两个数做加减乘除的运算。
package com.lovoinfo;
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入第一个整数: ");
int a = sc.nextInt();
System.out.print("请输入第二个整数: ");
int b = sc.nextInt();
System.out.printf("%d+%d=%d\n", a, b, a + b);
System.out.printf("%d-%d=%d\n", a, b, a - b);
System.out.printf("%d*%d=%d\n", a, b, a * b);
System.out.printf("%d/%d=%d\n", a, b, a / b);
sc.close();
}
}
练习4:用弹出式对话框完成上面的程序。
package com.lovoinfo;
import javax.swing.JOptionPane;
public class CalculatorGUI {
public static void main(String[] args) {
String a = JOptionPane.showInputDialog("请输入第一个数:");
String b = JOptionPane.showInputDialog("请输入第二个数:");
int num1 = Integer.parseInt(a);
int num2 = Integer.parseInt(b);
String message = String.format(
"%d+%d=%d", num1, num2, num1 + num2);
JOptionPane.showMessageDialog(null, message);
}
}
练习5:将英制单位的英寸转换成公制单位的厘米(1英寸=2.54厘米)。
package com.lovoinfo;
import java.util.Scanner;
public class InchToCentimeter {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入英寸: ");
double a = sc.nextDouble();
double b = a * 2.54;
System.out.printf("%.2f 英寸 = %.2f 厘米\n", a, b);
sc.close();
}
}
作业1:编程实现摄氏温度转换成华氏温度。
import java.util.Scanner;
public class C {
public static void main(String[] args) {
Scanner scannernn = new Scanner(System.in);
System.out.print("请输入摄氏度");
double one = scannernn.nextDouble();
double two = one / 0.55556 + 32;
System.out.printf("%.2f 摄氏度 = %.2f 华氏度 ", one, two);
scannernn.close();
}
}