java01

1:java发展史

JAVA的语言设计始于1991年,SUN公司最开始想在消费类电子产品方面寻求市场,
     成立了由James Gosling领导的Green开发小组首要目标是编写可内嵌于家用小型电器设备内部的软件 ,使得机器变得更加的人工智能。开始的时候Green小组是用C++编写的,后来发现C++并不适合这类任务。为什么呢?因为C++编写的程序常常会有使系统失效的程序错误,由其是内存管理和指针操作,常产生很多bug,大家设想 一下啊,比如说一台烤面包机上的程序有错误,可能会使面包机烧毁,甚至 更严重会产生爆炸。所以后期呢,为了解决这个问题,Green小组 决定自己开发一种新的语言,该语言的设计目标是具有平台 的独立 性、高度的可靠性和安全性。因为那个时候C以及C++已经得到了广泛的应用,所以他们决定 以C++为基础来开发该语言。该语言最初被取名为Oak(橡树)。 Java的取名也有一些趣闻, 有一天, 几位Java成员组的 会员正在讨论给这个新的语言取什么名字, 当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一 个人灵机一动说就叫Java怎样, 得到了其他人的赞赏, 于是更名为JAVA(咖啡),一会呢,我们安装JDK的时候大家能看见我们JDK的图标呢就是一杯咖啡。后期呢,在这个家电方面确实取得了一些成就,但是由于各种原因,还是没有推上市场。直到1994年,借着Internet和WWW的飞速发展,SUN公司呢,发现JAVA具有平台的独立性、高度的可靠和安全性非常适合在Internet的WWW上做应用开发。经过改造呢,终于JAVA在1995年5月23号正式宣布诞生了。

2:介绍几个jdk的重大版本

1.版本1.2(Playground运动场):

JDK1.2 Solaris Exact VM,附带JIT解释器,提升GC性能,精准内存管理(Accurate Memory Management),数据类型敏感。

2.版本1.5(Tiger老虎):

1).自动装箱与拆箱:

自动装箱的过程:每当需要一种类型的对象时,这种基本类型就自动地封装到与它相同类型的包装中。

自动拆箱的过程:每当需要一个值时,被装箱对象中的值就被自动地提取出来,没必要再去调用intValue()和doubleValue()方法。

自动装箱,只需将该值赋给一个类型包装器引用,java会自动创建一个对象。

自动拆箱,只需将该对象值赋给一个基本类型即可。

java——类的包装器

类型包装器有:Double,Float,Long,Integer,Short,Character和Boolean

2).枚举

把集合里的对象元素一个一个提取出来。枚举类型使代码更具可读性,理解清晰,易于维护。枚举类型是强类型的,从而保证了系统安全性。而以类的静态字段实现的类似替代模型,不具有枚举的简单性和类型安全性。

简单的用法:JavaEnum简单的用法一般用于代表一组常用常量,可用来代表一类相同类型的常量值。

复杂用法:Java为枚举类型提供了一些内置的方法,同事枚举常量还可以有自己的方法。可以很方便的遍历枚举对象。

3).静态导入

通过使用 import static,就可以不用指定 Constants 类名而直接使用静态成员,包括静态方法。

import xxxx 和 import static xxxx的区别是前者一般导入的是类文件如import java.util.Scanner;后者一般是导入静态的方法,import static java.lang.System.out。

4).可变参数(Varargs)

可变参数的简单语法格式为:

methodName([argumentList], dataType...argumentName);

5).内省(Introspector)

是 Java语言对Bean类属性、事件的一种缺省处理方法。例如类A中有属性name,那我们可以通过getName,setName来得到其值或者设置新 的值。通过getName/setName来访问name属性,这就是默认的规则。Java中提供了一套API用来访问某个属性的getter /setter方法,通过这些API可以使你不需要了解这个规则(但你最好还是要搞清楚),这些API存放于包java.beans中。

一 般的做法是通过类Introspector来获取某个对象的BeanInfo信息,然后通过BeanInfo来获取属性的描述器 (PropertyDescriptor),通过这个属性描述器就可以获取某个属性对应的getter/setter方法,然后我们就可以通过反射机制来 调用这些方法。

6).泛型(Generic)

C++ 通过模板技术可以指定集合的元素类型,而Java在1.5之前一直没有相对应的功能。一个集合可以放任何类型的对象,相应地从集合里面拿对象的时候我们也 不得不对他们进行强制得类型转换。猛虎引入了泛型,它允许指定集合里元素的类型,这样你可以得到强类型在编译时刻进行类型检查的好处。

7).For-Each循环

For-Each循环得加入简化了集合的遍历。假设我们要遍历一个集合对其中的元素进行一些处理。

3.版本1.7(Dolphin海豚):

1.switch中可以使用字串

2."<>“这个玩意儿的运用List tempList = new ArrayList<>(); 即泛型实例化类型自动推断

3.自定义自动关闭类

4.新增一些取环境信息的工具方法

5.Boolean类型反转,空指针安全,参与位运算

6.两个char间的equals

7.安全的加减乘除

8.对Java集合(Collections)的增强支持

9.数值可加下划线

10.支持二进制文字

11.简化了可变参数方法的调用

12.在try catch异常扑捉中,一个catch可以写多个异常类型,用”|"隔开

4.版本1.8(Spider蜘蛛)

Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可。

新增lambda表达式

提供函数式接口

Java 8 允许你使用 :: 关键字来传递方法或者构造函数引用

我们可以直接在lambda表达式中访问外层的局部变量。 5.jak11:

1.本地变量类型推断

2.字符串加强

3.集合加强

4.Stream 加强

5.Optional 加强

6.InputStream 加强

7.HTTP Client API

8.化繁为简,一个命令编译运行源代码 2:jdk软件安装

2.1环境变量配置

1:我的电脑->单机右键->点击属性->点击高级配置 ->进入环境变量

2:找到path 为系统寻找路径地址

2.2测试是否安装成功

进入dos窗口,

方法1:win+r:输入cmd,回车

方法2:开始里面输入cmd,回车

出现黑色窗口分别输入1:javac 2:java 3.DOS窗口

1.进入dos: win+R:输入cmd

2.退出:exit

3.常用命令

dir 展示当前路径下的文件及文件夹(路径) dir

c: d: e: f: 切换盘符 c:

cd 相对路径 路径切换 cd test

cd 绝对路径 1.在当前盘符,直接切换路径 2.夸盘符,则需要2步骤,2中方式:

第一种方式:先盘符,后路径 d: cd d:/xxx/xxx

第二种方式:先路径,后盘符 cd d:/xxx/xx d:

cd ..上一级目录 cd .. cd../.. cd ../../../ cd .

Tab: 补全当前路径中存在文件名称

↑↓: 当前dos历史记录切换

cls :清屏 练习:用记事本编写helloworld

Public class HelloWorld{ public static void main(String[] args){ System.out.println("helloworld"); } }

第一步:新建记事本->名为helloworld->后缀为.java

第二步:打开记事本,编写代码(如上)并保存

第三步:win+r 打开dos窗口并找到该记事本的路径下-> 输入javac helloworld.java->回车等待

编译成功

第四步:继续输入java helloworld->成功编写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值